Можете ли вы помочь мне понять этот код C #? - PullRequest
0 голосов
/ 07 августа 2010

Я читаю Pro ASP.Net MVC2 и дошел до того, что ничего не объясняется достаточно хорошо.Например, следующее говорит мне, чтобы я создавал этот код C # вручную:

Реализация модели домена аукционов С LINQ to SQL вы можете настроить отображения между классами C # и подразумеваемой схемой базы данных, либо декорировавклассы со специальными атрибутами или путем написания файла конфигурации XML.Преимущество опции XML заключается в том, что постоянные артефакты полностью удаляются из классов вашего домена 4, но недостатком является то, что на первый взгляд это не так очевидно.Для простоты я здесь скомпрометирую и использую атрибуты.Вот классы модели предметной области Auctions, теперь полностью размеченные для LINQ to SQL: 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(); } }
}

Где именно я должен написать это?Или он просто отображает сгенерированный код DBML Linq-to-sql?

1 Ответ

1 голос
/ 07 августа 2010

Это не сгенерированный код. Вот как вы используете сопоставления Linq для сопоставления ваших классов с вашей базой данных.

Вы просто пишете это в CS-файле. Он может пойти куда угодно, но если вы используете ASP.NET MVC, вы обычно помещаете его в папку Models.

Смотрите это: http://msdn.microsoft.com/en-us/library/bb386971.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...