我开始使用ASP.NET核心模板构建我的ASP.NET Web应用程序。我注意到它已经在〜 data 迁移文件夹中的两个文件中已经有两个文件。
起初,它抱怨我有PowerShell 2,所以我安装了V3。然后,我从软件包管理器中安装了软件包ENTITYFRAMEWORK(v6.1.3(,因为在VS.2015中没有从模板中安装的某种方式。
。现在,它给了我一个错误,例如" exception呼叫" setData"," setdata"," 2"参数:",然后是一堆东西。
$domain.SetData('contextProject', $contextProject)
CategoryInfo : NotSpecified: (:) [], MethodInvocationException
FullyQualifiedErrorId : SerializationException
Exception calling "SetData" with "2" argument(s): "Type 'Microsoft.VisualStudio.ProjectSystem.VS.Implementation.Package.Automation.OAProject' in assembly 'Microsoft.VisualStudio.ProjectSystem.VS.Implementation,
在C: Users Devel.nuget packages entityframework 6.1.3 tools entityframework.psm1:720 char:5 $ domain.setData('startupproject',$ startupproject(
我正在使用vs.2017 Update 1,我给人的印象是这种"核心"使生活更复杂,而不是使其更简单。
我做以下操作:
- 设置为启动项目我的单元测试项目,
- 将平台设置为任何CPU,
然后我发出了此命令启用移民
启用迁移-ProjectName" myprojectwithContext" -connectionsTring"数据源=。 sql;初始目录= xxxxx; Integrated Security = true; multipleActiverSultSetsetsetsetsetsetsetsetsetsetsetsetsetsetsetsets.data.data.data.sqlclient
添加移民
的相同事物添加迁移-Name myName -projectName" myProject" -connectionsTring "数据源=。 sql;初始目录= xxxx;集成 security = true;多重反应ViverSultSets = true" -connectionProviderName system.data.sqlclient
不确定是否有任何帮助:将我的Ent放置在项目目标.NET .NET 4.6.2之后,但使用"新" MSBUILD-SYNTAX(我认为我认为(就是这样(。
projectName.csproj(包含来自实体框架的代码的一个(看起来像:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
我现在使用VS 2017的" Windows Classic Desktop -Class Library(.NET Framework("模板重新创建了该项目(基本上:再次复制所有代码和设置所有依赖项(。
现在,projectName.csproj看起来像这样(传统msbuild?不确定如何调用(:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)$(MSBuildToolsVersion)Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)$(MSBuildToolsVersion)Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
我仍然可以添加"新"项目,以引用包含ASP.NET核心内容的项目。而且,更重要的是,现在使用包含EF类型的项目上使用" add-Ogration"(编辑:我仍然需要遵循Damian Drygiel的建议:启动项目必须是一个具有有效app.config的项目(。。
老实说,我仍然不确定使用此解决方法是否是一个好主意,因为它会导致混合两种类型的项目/MSBUILD版本。不确定含义是什么。到目前为止,它似乎有效。
到目前为止,我的外卖:不要尝试将.NET 4.6与"新"项目格式一起使用。目前这似乎还不错。
你好,我也遇到相同的错误,其背后的主要原因是您的类库是标准库,使用.NET框架类型的类库,并解决了问题,安装实体框架并运行启用移民命令其作品,它应包含上下文类。