草庐IT

Pods-frameworks

全部标签

c# - 如何包装 Entity Framework 以在执行前拦截 LINQ 表达式?

我想在执行前重写LINQ表达式的某些部分。而且我在将我的重写器注入(inject)正确的位置时遇到了问题(实际上根本没有)。查看EntityFramework源代码(在反射器中),它最终归结为IQueryProvider.Execute,它在EF中通过ObjectContext提供的表达式耦合内部IQueryProvider提供者{get;属性。所以我创建了一个包装类(实现IQueryProvider)来在调用Execute时重写表达式,然后将其传递给原始提供程序。问题是,Provider后面的字段是privateObjectQueryProvider_queryProvider;。此

c# - Entity Framework 不保存修改后的 child

令人沮丧,这个。这是由数据库优先EntityFramework生成的一对相关对象:publicpartialclassDevelopmentType{publicDevelopmentType(){this.DefaultCharges=newHashSet();}publicSystem.GuidRowId{get;set;}publicstringType{get;set;}publicvirtualICollectionDefaultCharges{get;set;}}publicpartialclassDefaultCharge{publicSystem.GuidRowId{g

c# - Entity Framework 不保存修改后的 child

令人沮丧,这个。这是由数据库优先EntityFramework生成的一对相关对象:publicpartialclassDevelopmentType{publicDevelopmentType(){this.DefaultCharges=newHashSet();}publicSystem.GuidRowId{get;set;}publicstringType{get;set;}publicvirtualICollectionDefaultCharges{get;set;}}publicpartialclassDefaultCharge{publicSystem.GuidRowId{g

c# - 如何从 Visual Studio 2017 中的 .NET Framework 4.5 控制台应用程序引用 .NET 标准库?

我终于安装了VisualStudio2017.2并试图让我的第一个项目正常运行,但我遇到了一些问题,希望能在这里解决。我有一个非常简单的.NET标准库,描述为以下项目文件:netstandard1.6还有一个非常简单的.NETFramework控制台应用程序,它引用了上述.NETStandard库,并描述为以下项目文件:Exenet45当我构建控制台应用程序时,出现以下构建错误:C:\ProgramFiles\dotnet\sdk\1.0.4\NuGet.targets(97,5):错误:ProjectCommon与net45(.NETFramework,Version=v4.5)不兼

c# - 如何从 Visual Studio 2017 中的 .NET Framework 4.5 控制台应用程序引用 .NET 标准库?

我终于安装了VisualStudio2017.2并试图让我的第一个项目正常运行,但我遇到了一些问题,希望能在这里解决。我有一个非常简单的.NET标准库,描述为以下项目文件:netstandard1.6还有一个非常简单的.NETFramework控制台应用程序,它引用了上述.NETStandard库,并描述为以下项目文件:Exenet45当我构建控制台应用程序时,出现以下构建错误:C:\ProgramFiles\dotnet\sdk\1.0.4\NuGet.targets(97,5):错误:ProjectCommon与net45(.NETFramework,Version=v4.5)不兼

c# - 修改了 Entity Framework 集合;枚举操作可能无法执行

我目前使用的是EF4.0。我的目标是删除子集合并将新子集合添加到同一父集合。publicvoidAddKids(intparentId,KidsnewKids){using(ModelContainercontext=newModelContainer(connectionString)){using(TransactionScopescope=newTransactionScope()){varquery=fromParent_parentincontext.Parentswhere_parent.ParentId==parentIdselect_parent;Parentparen

c# - 修改了 Entity Framework 集合;枚举操作可能无法执行

我目前使用的是EF4.0。我的目标是删除子集合并将新子集合添加到同一父集合。publicvoidAddKids(intparentId,KidsnewKids){using(ModelContainercontext=newModelContainer(connectionString)){using(TransactionScopescope=newTransactionScope()){varquery=fromParent_parentincontext.Parentswhere_parent.ParentId==parentIdselect_parent;Parentparen

c# - Entity Framework - 外键组件......不是类型的声明属性

我有以下模型publicclassFilanthropyEvent:EntityBase,IDeleteable{publicintId{get;set;}publicstringName{get;set;}publicDateTimeEventDate{get;set;}publicstringDescription{get;set;}publicdecimalTarget{get;set;}publicdecimalEntryFee{get;set;}publicboolDeleted{get;set;}publicICollectionEventAttendees{get;set

c# - Entity Framework - 外键组件......不是类型的声明属性

我有以下模型publicclassFilanthropyEvent:EntityBase,IDeleteable{publicintId{get;set;}publicstringName{get;set;}publicDateTimeEventDate{get;set;}publicstringDescription{get;set;}publicdecimalTarget{get;set;}publicdecimalEntryFee{get;set;}publicboolDeleted{get;set;}publicICollectionEventAttendees{get;set

c# - Entity Framework : Unrecognized element 'providers' exception

当我将EntityFramework5.0.0与.NET4.0一起使用时,我在运行时遇到了一个Unrecognizedelement'providers'异常。实际上,对于.NET4.0,当我使用NuGet执行安装包时,加载的是EntityFramework4.4.0版。当我从资源管理器检查文件的属性时,我可以看到:这是我的配置文件我感觉EntityFramework4.4.0无法识别标签。我可以只删除或重命名该部分吗?当我删除该部分时,我得到另一个异常:底层提供程序打开失败。 最佳答案 我在使用Nuget将EF从版本6降级到版本5