2010-08-07 4 views
0

Pro ASP.Net MVC2를 읽는 중입니다. 아무 것도 설명되지 않은 점을 들었습니다. 예를 들어, 다음과 같은 수동이 C# 코드 생성 알려줍니다 :이 C# 코드를 이해하도록 도와 줄 수 있습니까?

SQL에 LINQ와 경매 도메인 모델 구현을, 당신은 클래스를 장식하여 C#을 클래스와 묵시적 데이터베이스 스키마 중 하나 간의 매핑을 설정할 수 있습니다 특수 속성을 사용하거나 XML 구성 파일을 작성합니다. XML 옵션 에는 도메인 클래스에서 퍼시스턴스 아티팩트가 완전히 제거되지만 이점은 눈에 띄지 않는 단점이 있습니다 ( ). 간단히하기 위해 여기서는 절충하고 속성을 사용합니다. 다음은 이제 완전히 SQL에 LINQ에 대한 마크 업 경매 도메인 모델 클래스는 다음과 같습니다 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에 의해 생성 된 코드 만 표시하고 있습니까?

답변

1

이것은 생성 된 코드가 아닙니다. Linq 매핑을 사용하여 클래스를 데이터베이스에 매핑하는 방법입니다.

CS 파일로 작성하면됩니다. 아무 데나 갈 수 있지만 ASP.NET MVC를 사용하는 경우 일반적으로 모델 폴더에 넣습니다.

이 참조 : http://msdn.microsoft.com/en-us/library/bb386971.aspx

+0

여기에 더 나은 설명이있다 : http://blogs.microsoft.co.il/blogs/bursteg/archive/2007/09/23/24907.aspx –

+0

나는 그 놀라 울뿐입니다은 이것은 실제로 생성 된 코드가 아닙니다. 내 장고 모델을 고수하겠다. –

+0

그래, 좀 어색해. 특성은 DataContext에 데이터베이스의 데이터를 찾는 위치를 알려주는 것입니다. Entity Framework의 새로운 Code-First 방식이 훨씬 우수하지만이 단계에서는 CTP에 불과합니다. –

관련 문제