2016-03-21 10 views
0

私は、SQL Serverデータベースからエンティティを取得するには、このコードを使用していてくださいArgumentNull例外エンティティFramework7

MyDbContext dbct =新しいMyDbContext(); IQueryable query = dbct.MyEntity;

は、しかし、私は私のクエリを取得しようとするeache時間は、私は、これらの例外が

System.ArgumentNullException取得:値をnullにすることはできません。 パラメータ名:MicrosoftのSystem.Linq.Expressions.Expression.Newでコンストラクタ (ConstructorInfoコンストラクタ、IEnumerableを1 arguments) at Microsoft.Data.Entity.Metadata.Internal.EntityMaterializerSource.CreateMaterializeExpression(IEntityType entityType, Expression valueBufferExpression, Int32[] indexMap) at Microsoft.Data.Entity.Query.ExpressionVisitors.Internal.MaterializerFactory.CreateMaterializer(IEntityType entityType, SelectExpression selectExpression, Func 3 projectionAdder、IQuerySource querySourceの)Microsoft.Data.Entity.Query.ExpressionVisitors.RelationalEntityQueryableExpressionVisitor.VisitEntityQueryableで (タイプをelementType) Microsoft.Data.Entity.Query.ExpressionVisitors.ExpressionVisitorBase.VisitでSystem.Linq.Expressions.ConstantExpression.Accept(ExpressionVisitor訪問者) で.Data.Entity.Query.ExpressionVisitors.EntityQueryableExpressionVisitor.VisitConstant(constantExpression constantExpression) (式expression)クエリ式、IQuerySource、querySource、Boolean inProj Microsoft.Data.Entity.Query.RelationalQueryModelVisitor.CompileMainFromClauseExpression(MainFromClause mainFromClause、QueryModel queryModel)でMicrosoft.Data.Entity.Query.EntityQueryModelVisitor.CompileMainFromClauseExpression(MainFromClause mainFromClause、QueryModel queryModel) でection) Microsoft.Data.Entityで 。 Microsoft.Data.EntityでRemotion.Linq.QueryModelVisitorBase.VisitQueryModel(queryModel queryModel) でRemotion.Linq.Clauses.MainFromClause.Accept(IQueryModelVisitor訪問者、queryModel queryModel) でQuery.EntityQueryModelVisitor.VisitMainFromClause(MainFromClause fromClause、queryModel queryModel) .Query.EntityQueryModelVisitor.VisitQueryModel(QueryModel queryModel) at Microsoft.Data.Entity.Query.RelationalQueryModelVisitor.VisitQueryModel(QueryModel q Microsoft.Data.Entity.StorageでMicrosoft.Data.Entity.Query.EntityQueryModelVisitor.CreateQueryExecutor [TResult(QueryModel queryModel) でMicrosoft.Data.Entity.Query.Internal.SqlServerQueryModelVisitor.VisitQueryModel(QueryModel queryModel) でueryModel) .Database.CompileQuery [TResult](QueryModel queryModel) ---例外がスローされた前の場所からのスタックトレースの末尾--- 、Microsoft.Data.Entity.Query.Internal.QueryCompiler <> c__DisplayClass18_0 1.<CompileQuery>b__0() at Microsoft.Data.Entity.Query.Internal.CompiledQueryCache.GetOrAddQuery[TResult](Object cacheKey, Func 1コンパイラ Microsoft.Data.Entity.Query.Internal.QueryCompiler.CompileQuery [式](式クエリ) at Microsoft.Data.Entity.Query.Internal.QueryCompiler.Execute [式](式クエリRemotion.Linq.QueryableBase 1.GetEnumerator() at Microsoft.Data.Entity.Internal.InternalDbSet 1.System.Collections.Generic.IEnumerable.GetEnumerator()にSystem.Collectionsで でMicrosoft.Data.Entity.Query.Internal.EntityQueryProvider.Execute [TResult](式表現で) ) 。 Generic.List 1..ctor(IEnumerable 1集) at System.Linq.Enumerable.ToList [TSource](IEnumerable`1 source)

+2

あなたの質問には本当に多くの情報はありませんが、一見すると、エンティティタイプにはパラメータのないコンストラクタがないようです。 – CodeCaster

+0

ありがとう、私はパラメータのないコンストラクタを追加することを忘れてしまった –

答えて

1

これは本当にEntity Frameworkがキャッチしてユーザーフレンドリーな例外に包み込みますが、これはあなたに伝えたいことです:

エンティティタイプには、パラメータのないコンストラクタが定義されていません。

これを追加すると例外がなくなります。

関連する問題