如何在“ Visual Studio 2013”中创建由其他库项目组成的统一c#库项目

埃伊尔迪兹(Eyyildiz)

也许解决方案很简单,但我找不到想要的方式。

我有一个主要的c#库项目,通过引用该项目,我的所有应用程序都可以使用。

现在,我创建了另一个小型图书馆项目,我希望所有应用程序也能在此新项目中看到名称空间/类。

由于我不能/不应该将此新项目的参考添加到我的所有项目中。我想用这个新的小型图书馆扩展我的主图书馆。

但是,仅将类拖放到主库中是不可行的,因为我有更多此类微型库,根据情况需要将其插入和拔出。

*因此,我想将此库的引用添加到我的main *库中,并使我的所有应用程序都看到新的库代码。但是,这个想法很酷,我希望它能奏效,但没有奏效。

我想念什么吗?我还能如何扩展我的主库?先感谢您。

弗朗西斯·罗杰斯

我同意鲍勃·霍恩(Bob Horn)的观点,这不是通常的方法。但是我有另一个可能的解决方案。如果项目规模还不太大,那就是可行的。我发现这可以在除了最大的应用程序之外的所有应用程序上完成。

从本质上讲,您的问题是在石器时代的远古程序员在实施“ N层”体系结构时就解决了。这应该给您一个提示,因为您的项目现在正在增长,所以您需要以新/旧方式重构/重构和重新考虑它。

一个示例...大多数项目需要以下条件:

  • 数据库层(实体框架或nhibernate或自动生成的类的类),
  • 存储库层(传统上称为数据库访问层)
  • 域层(在其他不太好的名称中也称为业务逻辑层)
  • 测试层(用于您的单元/集成测试)
  • 服务层(这使您所有的后端东西都可以被包含在一个地方)
  • UI层(这使您的各种UI可以通过服务层访问系统)

请注意,唯一具有复数的层是UI层。这是因为您可以编写控制台UI,Web UI,Apple ICoffeeMaker或IWashingMachine或IBoobImplanter的UI,或者Apple决定接下来发明的任何新设备,Windows的UI,Linux的UI,UI的UI。 Android,基本上是您想要的任何设备的UI。

所有这些UI层都访问服务层,这迫使所有想要访问系统的应用程序都完全在服务层的控制之下进行访问。

这还具有将所有相关代码包含在一个地方的好处,这通常在维护,安全性,可测试性,验证等方面具有主要好处,并使UI层可以自由地做自己最擅长的工作……显示信息。

最后,您还可以非常轻松地将所有最新和最好的设计模式应用于这样的系统,因为您要做的就是在您认为有必要解耦的各层之间实现接口,并且可以顺利实现完整的DI / IOC以及健康饮食为您的项目提供的所有其他好处。

许多人可能会说这对小型项目来说太繁琐了,但是...

  • 您可以对其进行模板化,以使其变得非常快速和容易。
  • 如果模板正确,则只需随着系统的增长添加真正需要的图层。
    • 尽管一旦完成一次,您将看到好处,并且通常将以相同的方式启动所有新项目(因为这样启动比在以后发现转换要容易得多)。
  • 您应该考虑到,任何成功的系统总是始于很小但不可避免的
    • 成长为更大的系统
    • 成为更大系统的一部分,
    • 零件被其他系统重用。

从一开始就采用适当的结构有助于这种增长。

我不知道这是否能回答您的问题,但是当我有空的时候,我将制作YouTube视频教程,说明如何正确执行此操作。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Visual Studio 2013中创建SQL Server数据库项目?

如何在Visual Studio 2013中创建多项目模板?

如何在Visual Studio 2010 Ultimate中创建C ++项目

如何在Visual Studio项目中访问其他SDK

如何在Visual Studio 2017中创建WCF服务库项目?

如何在Visual Studio 2019 16.8.1中创建.Net 5.0类库项目?

如何在Visual Studio中将库包含到项目中?

如何在Visual Studio 2013中获取默认项目目录

如何在Visual Studio 2019中创建Xamarin PCL项目

如何在 Visual Studio 2019 中创建 DSL 工具项目?

如何在Visual Studio 2017中创建MVC项目?

如何在 Visual Studio 中集成项目

如何在Visual Studio 2012或Visual Studio 2013中打开旧的MVC项目?

如何在Visual Studio 2017中创建Visual c ++ MFC控制台项目

如何在TFS中创建分支时停止Visual Studio 2013继承团队项目安全设置

如何在C ++中设置json库?(Microsoft Visual Studio)

如何在Visual Studio 2019中从其他解决方案链接`.lib`库?

如何在VS 2015中发布Visual Studio数据库项目

如何在 Visual Studio (C#) 中将 ASP.NET 项目与 SQL Server 数据库表连接

如何从Github存储库中删除Visual Studio 2013项目?

如何在 Visual Studio Mac 上创建 VB .NET 项目?

如何在Visual Studio中更改“许可给”?

如何在Visual Studio中升级ReSharper?

如何在Visual Studio中包括OpenSSL

如何在Visual Studio中获取行号

如何在visual studio中调试python

如何在 Visual Studio 中将类库项目转换为 Web API 项目?

如何在Visual Studio 2015中启用WiX项目

如何在Visual Studio 2017中启用WiX项目