目前,我们正在MVC中寻找NopCommerce的最新版本(2.60),我们将很快对其进行集成...我们已经下载了源代码,并为用户指南文档支付了20美元的费用。文档很棒!我的意思是……从某种意义上说,它很好地解释了如何部署,安装以及如何在UI Frontend和Backend周围工作。这对于总体概述很有用,但是缺少对如何与NopCommerce团队合作的理解。什么是/是最佳实践等...
例如(或并行),如果您决定与Dotnetnuke作为一个团队一起工作,则通常以以下方式工作:
机器。
开发服务器)。
在您的Dotnetnuke安装中。
随模块一起提供)到一个zip文件中。
专用服务器(开发服务器)。
这种方法对Dotnetnuke非常有用,更重要的是,如果您有一组开发人员来创建模块。
我的问题是团队如何与NopCommerce MVC合作?
我假设直接在源代码中工作是个坏主意,以防您的团队决定修改核心元素/源,这将导致无法升级到较新版本(或中断更改)。
我不确定与Dotnetnuke的相似之处是否正确……但是任何人都不会有任何想法(或帮助我澄清一下)团队如何与NopCommerce MVC一起工作。
此外,团队是否应该仅依靠为NopCommerce创建插件而远离修改核心,还是无关紧要?
如果在最终的NopCommerce MVC升级创建类似的对象和/或覆盖它们的情况下,我们应该在SQL中添加新对象(或修改现有对象)呢?
感谢您帮助我阐明这一点。
真挚地
文斯
最佳答案
NopCommerce中的插件几乎类似于DNN中的模块。根据您需要执行的操作,有时有时需要修改核心代码。
我为服务所做的工作是创建一个新类并从现有服务继承,然后覆盖您要更改的功能。创建一个新的DependencyRegistrar类,并将您的新服务类设置为该特定接口(interface)的实现。还要确保Order属性为1,以便在存货1之后加载您的DR类。由于您是从核心类继承而来,因此您未覆盖的任何函数都将由父类处理。如果需要添加新功能,则只需修改接口(interface),在存货类中放置一个 stub ,然后自己实现即可。
主题可以覆盖Nop.Web项目中的 View 。管理员资料和Web Controller 变得更加棘手。我只是直接修改这些文件。
可以使用部分类添加新字段来完成Core和Data类。
无论如何,在发布更新时,您仍然需要将更改与解决方案合并。我的意见是,最好现在编写干净,可读的代码,并在合并项目符号出现时咬一下。
我现在并不真正担心SQL脚本,因为我是一个开发人员,但是也许您为ALTER脚本添加了一个文件夹,并在它们创建后命名了它们。然后,每个开发人员都知道在最新时需要运行哪些脚本。
关于asp.net-mvc - 如何与NopCommerce MVC团队合作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11777720/