我在Visual Studio 2010中创建了一个新的sharepoint项目,并且错误地将它作为沙盒解决方案,在完成我的开发之后它不会构建,因为我正在向控制模板添加项目,并且它说我需要将项目作为场解决方案,所以如何更改eproject类型?
以下代码仅用于演示目的.
假设我有2个组件(businessService和dataService)和一个UI类.
UI类需要业务服务,businessService需要dataService,而dataService需要依赖connectionString.
形成我需要解析业务服务的UI类,所以我写下面的代码:
var service = container.Resolve<BusinessService>(new { dependancy = "con string 123" }));
Run Code Online (Sandbox Code Playgroud)
请注意,dependance是connectionString构造函数参数.
但上面的代码不起作用,说dataService期望依赖性不满意.
无法创建组件'dataService',因为它具有要满足的依赖性.dataService正在等待以下依赖项:
密钥(具有特定密钥的组件) - 未注册的依赖性.
所以作为一种解决方法我这样做:
var service = container.Resolve<BusinessService>(new { dataService = container.Resolve<IDataService>(new { dependancy = "123" }) });
Run Code Online (Sandbox Code Playgroud)
但是从设计,编码风格和许多角度来看,这不是一个很好的方法.
所以,如果您可以建议为什么它不能以简单的方式工作或者您有更好的解决方法请分享.
我的问题不是编程语言特定,而是更普遍的问题,看看人们的思维方式.
通常在大型开发公司中,每个工作都有特定的角色,例如程序员和架构师.因此,架构师的观点是拥有完美的架构师和解决方案设计,另一方面,程序员正在处理实际实现应用程序功能和UI的东西.因此,如果您让架构师例如在没有程序员的情况下处理应用程序,您将从内部(设计模式,类,数据库表)获得完美的应用程序,但外部没有任何内容,反之亦然.程序员总是专注于输出,而不必过多关注设计原则(例如SOLID原则).
现在我正在一家小公司工作,团队最多由8-10人组成,所以你需要照顾你的应用程序设计以及实现这些功能.所以我的问题就是
我希望我们可以有不同的思维方式,这样我们就可以提出多种可接受的解决方案