使用 ModelDrivenControllerBase 调用 MDrivenEcoSpaceAndModelForNetStandard 时出现 ESType 错误
ESType error when ModelDrivenControllerBase is using to call MDrivenEcoSpaceAndModelForNetStandard
mvc 或 webapi netcore 项目中的代码 MyController:ModelDrivenControllerBase<EcoProject1EcoSpace>
显示错误 "the type 'MDrivenTemplateProj.EcoProject1EcoSpace' cannot be used as type parameter 'ESType' in the generic type or method 'ModelDrivenControllerBase<ESType>'. There is no implicit reference conversion from 'MDrivenTemplateProj.EcoProject1EcoSpace' to 'Eco.Handles.DefaultEcospace"
+ 对 add ref to the 'MDriven.Handles.netStandard, version=7.0.0.0, culture=neutral, publickeytoken=null'
的恼人请求。 (始终是 7.0.0.0 版本!)
能否请您指教如何避免此类错误?
我正在尝试使用 NetFramework 4.x 开发引用 MDrivenEcoSpaceAndModelForNetStandard 项目的 webapi netcore 3.1 应用程序。经验.
似乎这是 netcore 项目的错误方式。
谢谢!
旧样式仍然有效:
- 参考您的 netcore webapi 中的 MDrivenEcoSpaceAndModelForNetStandard 项目
- 将 ControllerBase 作为您的 MVC 控制器的基础class
- 在控制器的构造函数中创建并激活新生态空间
_es = new MDrivenTemplateProj.EcoProject1EcoSpace();_es.Active = true;
- 如果你想使用虚拟机,你可以调用 CreateFromViewModel 方法,例如
var vmc = Eco.ViewModel.Runtime.ViewModelHelper.CreateFromViewModel("SampleViewModel", this._es, null, false);
MDrivenEcoSpaceAndModelForNetStandard 项目中仍然需要的手动修复:
- EcoProject1EcoSpace.Designer.cs - this.persistenceMapperSharer1.MapperProviderTypeName 自动生成的值不正确
- EcoProject1PMP.Designer.cs - this.EcoSpaceTypeName 自动生成的值不正确
- 准备好你在 VS EcoProject 建模器中的构建在上述修复后将无法启动持久性。它会显示“找不到合适的构造函数”消息
针对 .netStandard2.1 和 .net5 的 nuget 上全新的 MDriven 包现已可用。
它们有正确的构建版本号,并且比旧的 Eco 包更精细。
mvc 或 webapi netcore 项目中的代码 MyController:ModelDrivenControllerBase<EcoProject1EcoSpace>
显示错误 "the type 'MDrivenTemplateProj.EcoProject1EcoSpace' cannot be used as type parameter 'ESType' in the generic type or method 'ModelDrivenControllerBase<ESType>'. There is no implicit reference conversion from 'MDrivenTemplateProj.EcoProject1EcoSpace' to 'Eco.Handles.DefaultEcospace"
+ 对 add ref to the 'MDriven.Handles.netStandard, version=7.0.0.0, culture=neutral, publickeytoken=null'
的恼人请求。 (始终是 7.0.0.0 版本!)
能否请您指教如何避免此类错误?
我正在尝试使用 NetFramework 4.x 开发引用 MDrivenEcoSpaceAndModelForNetStandard 项目的 webapi netcore 3.1 应用程序。经验.
似乎这是 netcore 项目的错误方式。
谢谢!
旧样式仍然有效:
- 参考您的 netcore webapi 中的 MDrivenEcoSpaceAndModelForNetStandard 项目
- 将 ControllerBase 作为您的 MVC 控制器的基础class
- 在控制器的构造函数中创建并激活新生态空间
_es = new MDrivenTemplateProj.EcoProject1EcoSpace();_es.Active = true;
- 如果你想使用虚拟机,你可以调用 CreateFromViewModel 方法,例如
var vmc = Eco.ViewModel.Runtime.ViewModelHelper.CreateFromViewModel("SampleViewModel", this._es, null, false);
MDrivenEcoSpaceAndModelForNetStandard 项目中仍然需要的手动修复:
- EcoProject1EcoSpace.Designer.cs - this.persistenceMapperSharer1.MapperProviderTypeName 自动生成的值不正确
- EcoProject1PMP.Designer.cs - this.EcoSpaceTypeName 自动生成的值不正确
- 准备好你在 VS EcoProject 建模器中的构建在上述修复后将无法启动持久性。它会显示“找不到合适的构造函数”消息
针对 .netStandard2.1 和 .net5 的 nuget 上全新的 MDriven 包现已可用。 它们有正确的构建版本号,并且比旧的 Eco 包更精细。