问题描述
我正在尝试使用C#CodeCom提供程序,尤其是找到了两个选项,一个用于指定"ReferencedAssemblies".以及一个指定编译器选项的程序("CompilerOptions").如果我指定了某些.NET 3.0程序集的完整路径,例如:
I am trying to use the C# CodeCom provider and in particular I find two options, one that specifies the "ReferencedAssemblies" and one that specifies the compiler options ("CompilerOptions"). If I specified the full path to some of the .NET 3.0 assemblies like:
cp.ReferencedAssemblies.Add( "System.dll" );
cp.ReferencedAssemblies.Add("System.dll");
cp.ReferencedAssemblies.Add(@ " C:\ Program Files \ Reference Assemblies \ Microsoft \ Framework \ v3.0 \ System.ServiceModel.dll"; );
cp.ReferencedAssemblies.Add(@"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\System.ServiceModel.dll");
这有效.如果未指定路径,则会出现错误,提示找不到ServiceModel.dll.与其指定所有.NET 3.0程序集的完整路径,不如让编译器知道它可以在何处搜索汇编.我选择了:
cp.CompilerOptions = string .Format( " ;/lib:{0}" , @" C:\ Program Files \ Reference Assemblies \ Microsoft \ Framework \ v3.0"; );
cp.CompilerOptions = string.Format("/lib:{0}", @"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0");
我仍然遇到无法找到程序集的错误,并且查看了一些临时文件(特别是.cmdline)文件,并且发现/lib选项是不在那里.似乎"CompilerOptions"被忽略.我缺少什么了,所以我可以选择其他程序集搜索路径吗?
谢谢.
凯文
推荐答案
这篇关于CompilerOptions.的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!