Linq InsertWithIdentity bug
От: ili Россия  
Дата: 15.03.11 11:21
Оценка:
        [MapField("DbId", "Id")]
        [MapField("DbChildId", "Child.Id")]
        public class LinqUpdateIssueOm1
        {
            public Int32 Id { get; set; }
            public String Name { get; set; }

            public LinqUpdateIssueOm2 Child { get; set; }
        }

        public class LinqUpdateIssueOm2
        {
            public Int32 Id;
            public String Name { get; set; }

        }



        [Test]
        public void LinqUpdateIssue()
        {
            using (var db = new DbManager())
            {
                var obj = new LinqUpdateIssueOm1
                {
                    Child = new LinqUpdateIssueOm2
                    {
                         Name = "Name2"
                    },
                    Name = "Name1"
                };


                var ins = db.InsertWithIdentity(obj);

            }
        }



System.ArgumentException : "Child.Id" не является членом типа "SkiDbProviderUnitTests.AccessorsTest.Base.RelationTests+LinqUpdateIssueOm1"
в System.Linq.Expressions.Expression.PropertyOrField(Expression expression, String propertyOrFieldName)
в BLToolkit.Data.Linq.Query`1.GetParameter(IDataContext dataContext, SqlField field) в Query.cs: line 753
в BLToolkit.Data.Linq.Query`1.InsertWithIdentity(IDataContextInfo dataContextInfo, T obj) в Query.cs: line 872
в BLToolkit.Data.Linq.Extensions.InsertWithIdentity(IDataContext dataContext, T obj) в Extensions.cs: line 246
в SkiDbProviderUnitTests.AccessorsTest.Base.RelationTests.LinqUpdateIssue() в RelationTests.cs: line 546

 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.