此版本在简化了某些常用的操作,数据返回不再采用接口,增强了SourceList, SourceTable的功能
在这里要感谢网友提供好的建议,并帮助我修复了不少bug,在功能上也有许多的改进
昵称:Berin-230760 QQ:100538511
昵称:Melody QQ:377526853
昵称:uxspy QQ:13970711
昵称:王皓 QQ:24097543
昵称:峰言峰语 QQ:95340299
还有一位园子里的朋友对我的帮助非常大,暂不知道他的QQ是多少
永远的阿哲 URL:http://www.cnblogs.com/ljzforever/
在这里忠心的感谢大家的支持,我会一如既往的为大家服务!
版本号:2.7.3 (2.7.3第一次修正)
1.修正bool字段在new出来的对象时不能更新的bug
对new出来的对象更新进行特殊处理。
new出来的对象更新时会更新所有提交的值
如果从数据库中读出的实体,则只更新被修改过的值
2.将Original对象名更改为Old,修正Old赋值不正确的bug
只有当前对象从数据库中读取并且更改时才会对Old对象赋值
3.在Entity对象上增加一个ToRowReader方法,可以按字段名来读取数据
4.修正了SourceList.ToTable()中的一个bug.
当List数据项中属性为类或结构时,调用ToTable()会出错!
5.增加了SourceTable释放托管资源的接口Dispose();
版本号:2.7.3 (2.7.3第二次修正)
1.修正数据查询时条件中出现{}这样的符号时出错的bug.
由于{}在组件内部有特殊用途,没能对传入的字符串进行特殊处理导致。
2.对TableRelation增加Select,Where,OrderBy等处理
TableRelation<A> tr = Table.From<A>().LeftJoin<B>(A._.ID == B._.ID)
.LeftJoin<C>(B._.PID == C._.PID)
.Where(A._.ID == 1)
.OrderBy(A._ID.Desc)
.Select(A._.All,B._.Name,C._PName)
DbSession.Default.From(tr).ToList();
3.返回的数据不再返回为接口,这样可以直接使用原始对象,省去转换的麻烦,如:
ToList()返回的为SourceList,SourceList继承于List
ToTable()返回的为SourceTable,SourceTable继承于DataTable
ToReader()返回的为SourceReader,SourceReader通过属性DataSource来访问IDataReader
4.支持内联查询语法,如下:
select [Products].*,[CategoryName] = ( select [Categories].[CategoryName] from [Categories]
where [Categories].[CategoryID] = [Products].[CategoryID] ) from [Products]
TableRelation<Products> relation = Table.From<Products>()
.Select(Products._.All, new SysField<Categories>("CategoryName", Table.From<Categories>()
.Select(Categories._.CategoryName).Where(Categories._.CategoryID == Products._.CategoryID)));
IList<Products> list = DataAccess.DefaultSession.From(relation).ToList();
版本号:2.7.3 (2.7.3第三次修正) stable
1.修正了在操作时字符串中带有 {} 时运行出错的bug.
2.修正了DbSession.Default.Update(Field,Field + 1,Where)方式运行时的错误
3.对SourceList与SourceTable在功能上进一步增强
4.存储过程与SQL语法操作中增加了字典参数传递的方法,如下
IDictionary<string, object> parameters = new Dictionary<string, object>();
parameters["$UserID"] = 1;
DbSession.Default.FromSql("select *from User where UserID = $UserID", parameters);
存储过程与之雷同
5.增加了SysValue的处理,例如
将用户ID为1的更新时间修改为当前数据库时间
DbSession.Default.Update(User._.UpdateTime,new SysValue("getdate()") User._.UserID == 1);
6.将原MySoft.Web中的MVP添加到MySoft.Data组件之中,避免在非Web项目中引用MySoft.Web程序集
这次为了MySoft.Data的代码再次被更改后发布,暂时不提供源码下载,愿请谅解!
有什么问题直接与我联系,我会及时修正。
SimpleGuestbook(基于MVP实现).rar下载
QQ:121849018
MSN:maoyong181@hotmail.com
Gmail:mysoft181@gmail.com
QQ讨论群(MySoft):群一:27071789 群二:107193048