利用反射映射数据库对象(二)

在上一篇文章里,我们里用反射,将数据库的查询结果集映射到对象中,以减少代码。现在我们就利用相同的原理来完成更新记录的操作。 更新记录时,我们需要知道表名,主键名,主键值,以及需要更新的字段信息。最初阶段,这些信息我们只要通过参数传递到方法中。1234public int Update(string tableName, string primaryKeyName, object entity)&#

web api 对[serialiable]特性的对象序列化问题

web api 2 中, 假如返回对象加了[serializable]特性,返回的json、xml数据都是包含对象的私有变量,而非公有属性,如:12345678910111213141516171819{ "Total": 1, "Data": [ { "_ticketnumber": "

web api 2 - 自定义help page的返回类型

当我们用HttpMessageResponse或者IHttpActionResult作为返回api的返回类型时,帮助页面的返回类型相应得也变成了HttpMessageResponse或者IHttpActionResult,而这不是我们所期望的Product、User等实际的返回实体。幸运的是,这是可自定义的, 简单得我都不好意思讲。 方法一(推荐)为方法添加一个属性[ResponseType(ty

利用反射映射数据库对象

12345678910111213141516171819202122232425262728public IEnumerable<User> GetUsers(){ var conn = ""; using (var sqlConnection = new SqlConnection(conn)) { using

.NET性能之遍历List<T>

最近对.NET项目进行性能优化,在开启编译器优化的前提下,对List对象遍历的不同方式进行了简单的研究和对比,以此记录。首先我们创建两个不同类型的List对象,各自塞了5000000个简单元素:1234567var listInt = new List&lt;int&gt;();var listString = new List&lt;String&gt;();for (var i = 0; i

在WCF Uri中使用特殊字符

当我们在iis中部署wcf时,我们会因为各种原因遇到无法在url的schema中使用一些特殊字符:%,&amp;,*,:,&lt;,&gt;,+,#, /, ?,\ 即使通过uri encode, 这些特殊字符仍无法被当作普通的string,如果我们想通过url传递这些特殊字符,需要在web.config中进行如下配置: 12&lt;httpRuntime requestPathInvalidCh