我在研究Visual Studio 2015的新功能时,发现了很多共享项目,但我不明白使用类库或可移植类库有什么不同.有人能解释一下吗?

Edit:共享项目是Visual Studio 2015中的一项新功能,与可移植类库不同.我知道什么是可移植类库.我想了解的是,共享项目与类库有何不同.请参阅下面的链接.

http://www.c-sharpcorner.com/UploadFile/7ca517/shared-project-an-impressive-features-of-visual-studio-201/

推荐答案

共享项目和类库之间的不同之处在于,后者是编译的,重用的单位是程序集.

而对于前者,重用单元是源代码,并且共享代码被合并到引用共享项目的每个程序集中.

当您想要创建针对specific个平台但仍有应该共享的代码的单独程序集时,这会很有用.

另见here:

共享项目引用显示在解决方案资源管理器的"引用" node 下,但共享项目中的代码和资源被视为链接到主项目的文件.


In previous versions of Visual Studio1, you could share source code between projects by Add -> Existing Item and then choosing to Link. But this was kind of clunky and each separate source file had to be selected individually. With the move to supporting multiple disparate platforms (iOS, Android, etc), they decided to make it easier to share source between projects by adding the concept of Shared Projects.


1这个问题和我的回答(到目前为止)表明,共享项目是Visual Studio 2015的一项新功能.事实上,他们在Visual Studio 2013 Update 2年首次亮相

.net相关问答推荐

与 Datagrid 的 SelectedItem 链接时的 WPF RadioButton 绑定问题

如何在 C# 中将 HTTP 发布请求发送到另一个 API?

无法解析此引用.找不到程序集

在 WinForms 应用程序中查找焦点控件的首选方法是什么?

为什么循环引用被认为是有害的?

Silverlight 与 Flex

RNGCryptoServiceProvider 的优缺点

为什么 System.Timers.Timer 能在 GC 中存活,而 System.Threading.Timer 不能?

当程序员说针对接口而不是对象的代码时,他们是什么意思?

ASP.NET Core (.NET Core) 和 ASP.NET Core (.NET Framework) 的区别

在 C#/.NET 中组合路径和文件名的最佳方法是什么?

如何防止任务的同步延续?

微软内部 PriorityQueue 中的错误?

什么是 .NET 应用程序域?

为什么要使用 C# 类 System.Random 而不是 System.Security.Cryptography.RandomNumberGenerator?

使用 C# 将时间跨度值转换为格式hh:mm Am/Pm

判断任意字符串是否为有效文件名的最简单方法

从不同程序集中的类名中解析类型

嵌套捕获组如何在正则表达式中编号?

在 Windows 窗体上绘制单个像素