我正在阅读Pro ASP.Net MVC2,我已经达到了一个没有得到足够解释的地步。例如,以下内容告诉我手动创建此C#代码:
实施拍卖领域模型 使用LINQ to SQL,您可以设置C#类和隐含数据库模式之间的映射 通过使用特殊属性修饰类或编写XML配置文件。 XML选项 具有以下优点:持久性工件完全从您的域类中删除,但是 缺点是乍一看并不那么明显。为简单起见,我会在这里妥协并使用 属性。 以下是现在已完全标记为LINQ to SQL的Auctions域模型类:5
using System;
using System.Collections.Generic;
using System.Linq;
using System.Data.Linq.Mapping;
using System.Data.Linq;
[Table(Name="Members")]
public class Member
{
[Column(IsPrimaryKey=true, IsDbGenerated=true, AutoSync=AutoSync.OnInsert)]
internal int MemberID { get; set; }
[Column]
public string LoginName { get; set; }
[Column]
public int ReputationPoints { get; set; }
}
[Table(Name = "Items")]
public class Item
{
[Column(IsPrimaryKey=true, IsDbGenerated=true, AutoSync=AutoSync.OnInsert)]
public int ItemID { get; internal set; }
[Column]
public string Title { get; set; }
[Column]
public string Description { get; set; }
[Column]
public DateTime AuctionEndDate { get; set; }
[Association(OtherKey = "ItemID")]
private EntitySet<Bid> _bids = new EntitySet<Bid>();
public IList<Bid> Bids { get { return _bids.ToList().AsReadOnly(); } }
}
我到底在哪里写这个?或者他只是通过Linq-to-sql DBML显示生成的代码?
答案 0 :(得分:1)
这不是生成的代码。这就是你使用Linq映射将类映射到数据库的方法。
您只需将其写入CS文件即可。它可以去任何地方,但如果您使用的是ASP.NET MVC,通常会将它放在Models文件夹中。