Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > .NET для новичков > LINQ2SQL


Автор: nextzi0 8.7.2010, 15:24
Правильно ли я понимаю, что прежде чем работать с какой-либо таблицей в БД, нужно описать сущность с входящими в эту таблицу полями? Только сегодня я начал осваивать LINQ to SQL, в примерах везде что-то типа этого:

DataContext db = new DataContext(@"c:\Northwnd.mdf");

// Get a typed table to run queries.
Table<Customer> Customers = db.GetTable<Customer>();

И каждый раз при работе с таблицами мне нужно описывать эти типы?

Автор: A5uKa 9.7.2010, 07:47
Да  smile 

например

Код

    [Record]
    [Table(Name="dbo.aspnet_Roles")]
    public partial class aspnet_Roles
    {
        public this() { }
        
        mutable _RoleName : string;
        mutable _LoweredRoleName : string;
        
        [Column(Storage="_RoleName", DbType="nvarchar(256)",)]
        public RoleName : string { get { _RoleName; } }
        
        [Column(Storage="_LoweredRoleName", DbType="nvarchar(256)",)]
        public LoweredRoleName : string { get { _LoweredRoleName; } }
    }


Код

        [DataObjectMethod(DataObjectMethodType.Select, true)]
        public static GetRoles() : List[(string * string)]
        {
            def RlTable = List();
            foreach(rln in System.Web.Security.Roles.GetAllRoles())
            {
                def res = linq<#from rl in _Roles
                    where (rl.RoleName==rln)
                    select (rl.RoleName, rl.LoweredRoleName)#>;
                _=RlTable.AddRange(res.AsEnumerable());
            }
            RlTable
        }

Автор: nextzi0 9.7.2010, 08:40
Спасибо, разобрался  smile . Жизнь упрощают sqlmetal и реляционный конструктор объектов smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)