无法使用ASP.NET Core Web应用程序中的VS.2017迁移



我开始使用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,我给人的印象是这种"核心"使生活更复杂,而不是使其更简单。

我做以下操作:

  1. 设置为启动项目我的单元测试项目,
  2. 将平台设置为任何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框架类型的类库,并解决了问题,安装实体框架并运行启用移民命令其作品,它应包含上下文类。

相关内容

  • 没有找到相关文章

最新更新