c# - scafford 自动生成 crud 仓库 asp.net5

标签 c# asp.net-core repository-pattern scaffolding

您好,我正在使用 visual studio 2015,我知道我们可以通过添加新的 scafford 项来生成 crud View Controller 和操作。但是代码生成不是很有用,似乎所有的数据层都依赖于 Controller

所以我的问题是,有什么方法可以使用 scafford 生成同时生成存储库模式 的代码?或者任何提供相同功能的 nuget?

对不起。我用谷歌搜索了几个小时。但仍然找不到解决方案。 :(

谢谢

enter image description here

最佳答案

我同意,这是 MVC Core (MVC6) 中的一个问题。为了能够与 Add Scaffold Controller 一起工作,必须在 project.json“dependencies” 部分包含一些附加包。如果你使用 RC1 那么你应该包括

"Microsoft.AspNet.Mvc": "6.0.0-rc1-final",
"Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-rc1-final",
"Microsoft.Extensions.CodeGenerators.Mvc": "1.0.0-rc1-final",
"EntityFramework.MicrosoftSqlServer": "7.0.0-rc1-final"

看到 Visual Studio 中的向导就足够了,您现在想念它。

为了能够在命令行界面中使用脚手架(例如dnx ef dbcontext scaffold ...),您需要添加更多依赖项

"EntityFramework.MicrosoftSqlServer.Design": "7.0.0-rc1-final",
"EntityFramework.Relational.Design": "7.0.0-rc1-final"
"EntityFramework.Commands": "7.0.0-rc1-final"

project.json"commands" 部分添加 "ef": "EntityFramework.Commands"

在将产品名称从 ASP.NET 5 更改为 ASP.NET Core 后,另一个问题导致所有包的重命名 float 。版本“7.0.0-rc1-final”中的包“EntityFramework.MicrosoftSqlServer”在版本“1.0.0-rc2-16811”中重命名为“Microsoft.EntityFrameworkCore.SqlServer”,包“Microsoft.AspNet.Mvc”在版本“6.0.0-rc1-final”在版本“1.0.0-rc2-17011”等的“Microsoft.AspNetCore.Mvc”中重命名(我使用了今天的最新版本 https://www.myget.org/F/aspnetcidev/)。

我建议今天留在 RC1 并等待重命名过程结束。我发了the suggestion ,可以简化现有项目的迁移,但是这个建议没有被采纳。 Microsoft 已将 RC2 和 RTM 的日期从二月和第一季度更改为未知(请参阅 the official roadmap 上的待定)。希望问题能在短时间内得到解决。

关于c# - scafford 自动生成 crud 仓库 asp.net5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35238345/

相关文章:

c# - 在 Web API 中上传单个文件

c# - 接口(interface) - 实现抽象类方法

c# - 此项目使用的 Microsoft.NET.Sdk 版本不足以支持对面向 .NET Standard 1.5 或更高版本的库的引用

razor - 在cshtml文件中的C# block 代码之间插入html标签

java - Android MVP - 演示者中丢失 View 引用 "NullPointerException... null object reference"

wpf - 使用存储库模式时我们是否需要重新创建模型类

C# 在 linq 上检索 where 子句

c# - 如何防止 ViewModel 构造函数被调用两次?

c# - ASPNetCore - 通过 REST 上传文件

c# - SelectMethod 为 ObjectDataSource 调用了两次