2012-07-10 78 views
0

我还没有找到任何有关如何做到这一点的信息,或者甚至根本没有可能。使用命令行csc.exe创建C#可移植类库?

http://msdn.microsoft.com/en-us/library/e13syb43

没有提及建立一个便携式类库什么,

http://msdn.microsoft.com/en-us/library/gg597391.aspx

没有提及一个命令行界面东西。

有没有其他人试图做到这一点,并找到了解决方案/发现它是不可能的?

+0

任何使用PCL的库都是可移植的,如果它本身并不依赖于pinvoke或COM依赖关系引入的平台实现细节。 – 2012-07-11 01:11:55

回答

1

通过命令行建立便携式库是可能的,你只需要通过正确的框架的引用。这些决定了你将支持的平台。

首先,是要通过命令行来做到这一点,因为你没有安装Visual Studio Pro中的原因是什么?如果是这样,它会变得有点棘手。

0

通常你会用的MSBuild命令行构建的手动调用CSC.EXE的csproj代替。

在另一方面,项目似乎被设置组件的 - 你应该能够给出正确的引用的集合(也可能需要禁用默认库)通过CSC命令行和手工打造。

+0

我可能完全错过了一些东西,但是当我使用csc.exe构建dll时,我不需要针对特定​​版本(2.0/3.0/3.5/4.0)和平台(全?紧凑?WP7?)?或者纯粹是一个MSBuild问题,只要不使用不可用的库,csc.exe的dll可以定位到任何平台? – 2012-07-11 00:11:30

+0

我不知道特定的“便携式类库”解决方案,但通常使用MSBuild构建会产生与在VS中构建相同的输出。您可以检查从VS编译时引用的最终库是否可以通过CSC/MSBuild获得相同的输出。 – 2012-07-11 00:19:21

+0

@LiHaoyi您只能在4.0及以上版本(4.5)上使用可移植类库。而且由于VS2010有一个模板,为什么它需要在命令行构建,如果我可能会问? – GrayFox374 2012-07-11 00:40:15