ASP.NET MVC 4 框架揭秘第十章疑问
来源:互联网 发布:windows同步时间出错 编辑:程序博客网 时间:2024/05/24 03:19
在P548页,实体类的生成和VmDbContext的创建内容中,添加POCO实体类代码生成器时,自动生成的代码出现了问题。
示例中的自动生成代码如下:
using System;using System.Collections.Generic;namespace Artech.VM{ public partial class Order { public Order() { this.OrderLines = new HashSet<OrderLine>(); } public string OrderId { get; set; } public string UserName { get; set; } public System.DateTime OrderTime { get; set; } public virtual ICollection<OrderLine> OrderLines { get; set; } } }
动手尝试的代码如下:
using System;using System.Collections;using System.Collections.Generic;using System.Collections.ObjectModel;using System.Collections.Specialized;namespace TVM.Models{ public partial class Order { #region Primitive Properties public virtual string OrderId { get; set; } public virtual string UserName { get; set; } public virtual System.DateTime OrderTime { get; set; } #endregion #region Navigation Properties public virtual ICollection<OrderLine> OrderLine { get { if (_orderLine == null) { var newCollection = new FixupCollection<OrderLine>(); newCollection.CollectionChanged += FixupOrderLine; _orderLine = newCollection; } return _orderLine; } set { if (!ReferenceEquals(_orderLine, value)) { var previousValue = _orderLine as FixupCollection<OrderLine>; if (previousValue != null) { previousValue.CollectionChanged -= FixupOrderLine; } _orderLine = value; var newValue = value as FixupCollection<OrderLine>; if (newValue != null) { newValue.CollectionChanged += FixupOrderLine; } } } } private ICollection<OrderLine> _orderLine; #endregion #region Association Fixup private void FixupOrderLine(object sender, NotifyCollectionChangedEventArgs e) { if (e.NewItems != null) { foreach (OrderLine item in e.NewItems) { item.Order = this; } } if (e.OldItems != null) { foreach (OrderLine item in e.OldItems) { if (ReferenceEquals(item.Order, this)) { item.Order = null; } } } } #endregion }}
MVC的框架是4.0。将项目的框架从.NET 4.5改为了.NET 4.0,也没有解决问题。
DbContext的自动生成也有一些问题。
项目报出一个警告(可能是问题的关键)
正在运行转换: 输入文件似乎使用了此模板所不支持的架构版本。此可能会导致编译错误。请使用“添加新的生成项”以添加更新的模板。
- ASP.NET MVC 4 框架揭秘第十章疑问
- ASP.NET MVC 4 框架揭秘
- 《ASP.NET MVC 5 框架揭秘》
- 学习ASP.NET MVC5框架揭秘笔记-传统MVC模式
- 学习ASP.NET MVC5框架揭秘笔记-什么是MVC模式
- 学习ASP.NET MVC5框架揭秘笔记-MVC的变体
- 学习ASP.NET MVC5框架揭秘笔记-ASP.NET MVC与Model2
- 学习ASP.NET MVC5框架揭秘笔记-ASP.NET MVC是如何运行的(一)
- 学习ASP.NET MVC5框架揭秘笔记-ASP.NET MVC是如何运行的(二)
- 学习ASP.NET MVC5框架揭秘笔记-ASP.NET MVC是如何运行的(三)
- 学习ASP.NET MVC5框架揭秘笔记-ASP.NET MVC是如何运行的(三)
- 学习ASP.NET MVC5框架揭秘笔记-ASP.NET MVC是如何运行的(四)
- 学习ASP.NET MVC5框架揭秘笔记-ASP.NET MVC是如何运行的(五)
- 学习ASP.NET MVC5框架揭秘笔记-ASP.NET MVC路由(一)
- 学习ASP.NET MVC5框架揭秘笔记-ASP.NET MVC路由(一)
- 学习ASP.NET MVC5框架揭秘笔记-ASP.NET MVC路由(二)
- 学习ASP.NET MVC5框架揭秘笔记-ASP.NET MVC路由(三)
- 学习ASP.NET MVC5框架揭秘笔记-ASP.NET MVC路由(四)
- linux常用命令——awk
- 项目采购管理中的合同计算
- realoj 125 模拟windos操作系统 文件搜索
- ios文件目录管理相关类方法
- POJ 2965:The Pilots Brothers' refrigerator
- ASP.NET MVC 4 框架揭秘第十章疑问
- 自定义 Android 对话框 (AlertDialog) 的样式
- Linux驱动头文件说明
- android的Task管理
- 解读 JPG图片结构
- 今天开始写我的第一篇博客
- POJ3461《Outplo》方法:KMP
- Visual Studio 2008 中使用插件实现Extjs提示的方法
- 关于POJ