标签: assemblies

如何确定是否使用TRACE或DEBUG标志编译.NET程序集

有没有办法找出是否已在未修改程序集的情况下使用TRACE或DEBUG标志集编译程序集?

.net trace assemblies release-mode

10
推荐指数
2
解决办法
6502
查看次数

如何在maven组件中包含单元测试?

原因:我们的项目使用Ant作为命令行界面.在使用maven的程序集插件进行新的程序集之后,我想进行初始测试以查看是否所有程序都已正确组装.因此,我需要在最终装配中包含单元测试.组装后,初始测试将被称为类似

> ant initTest
Run Code Online (Sandbox Code Playgroud)

build.xml文件:

<target="initTest">
  <junit>
   <test class="MyTest" />
  </junit>
</target>
Run Code Online (Sandbox Code Playgroud)

问题是:我想在src/test/java中保留我的单元测试,而不是将它们移动到src/main/java.有没有办法告诉程序集插件包含我的单元测试?汇编描述符中的简单包含不执行...

junit maven-2 assemblies include

10
推荐指数
1
解决办法
1万
查看次数

VS.NET:项目参考与大会参考

这里有一些争论,哪个更适合从其他项目引用我们的公共代码库:通过项目或汇编.我赞成引用该项目,特别是因为我们有自动化的单元测试,证明公共代码能够满足它的需要.

另一个阵营的想法是锁定那些项目,每月只发布一次或类似的东西.然后强制所有项目引用程序集.他们认为这将保护他们免于部署未经测试的代码.他们"太忙"无法编写自动化单元测试并将其项目配置为持续集成,我对此没有任何影响,所以请不要关注这方面.

这就是我能想到为什么项目参考是更好的解决方案的原因.我也在寻找其他意见.

优点:

  • 引用项目可确保您使用最新代码.你不必等待任何事情.
  • 减少重复.没有最新的代码,重新发明轮子的可能性更大.
  • 如果开发人员需要某些东西并且无法将其添加到它所属的程序集中,那么它将在任何可行的位置创建,从而产生许多不一致和代码重复.
  • 开发更容易,因为您可以轻松查看/调试引用代码中发生的情况.
  • 我们常见的东西并没有经常改变,但是当它发生时,它通常是有用的东西.为什么要增加额外的维护和汇编发布管理负担.

缺点:

  • 可能需要更长时间才能加载.
  • 将项目添加到新解决方案然后添加程序集引用可能需要稍长时间.

.net assemblies reference project visual-studio

10
推荐指数
1
解决办法
3175
查看次数

是否可以将动态程序集保存到磁盘?

我最近买了Ayende的书,在Boo中构建DSLs(买它,读它,它真棒)但是我遇到了一个实现问题,我想看看生成的代码是什么样的.我通常会使用反射器来查看代码,但在这种情况下,程序集是动态的,只在内存中.有没有办法将动态程序集保存到磁盘,以便我可以反映它们?

编辑/我的答案:

哇,花了一段时间才回到这个.不幸的是,我从原来的问题中留下了一点重要的一点.

重要的一点:我正在使用Ayende的RhinoDSL库,正如他在书中所建议的那样.我可以访问我的DslEngine子类中的boo编译器,如下所示:

public class JobEngine : DslEngine
{
    protected override void CustomizeCompiler(Boo.Lang.Compiler.BooCompiler compiler, Boo.Lang.Compiler.CompilerPipeline pipeline, string[] urls)
    {
        pipeline.Insert(1, new ImplicitBaseClassCompilerStep(typeof (JobBase), "Prepare", "JobLanguage", "log4net", "Quartz"));
    }
}
Run Code Online (Sandbox Code Playgroud)

要改变最少并获得我想要的东西我需要添加一行...

public class JobEngine : DslEngine
{
    protected override void CustomizeCompiler(Boo.Lang.Compiler.BooCompiler compiler, Boo.Lang.Compiler.CompilerPipeline pipeline, string[] urls)
    {
        compiler.Parameters.GenerateInMemory = false; // <--- This one.
        pipeline.Insert(1, new ImplicitBaseClassCompilerStep(typeof (JobBase), "Prepare", "JobLanguage", "log4net", "Quartz"));
    }
}
Run Code Online (Sandbox Code Playgroud)

这导致编译器将程序集输出到我的〜\ LocalSettings\Temp目录,然后我可以反映它.重要的是要注意,进行该更改会导致程序的其余部分中断(RhinoDSL无法再在内存中找到程序集,因为我将它们输出到磁盘),因此这仅用作调试工具.

.net boo assemblies dynamic

10
推荐指数
1
解决办法
7123
查看次数

ASP.NET - bin目录与在web.conf中添加程序集

我对ASP.NET编程比较陌生(但不是一般的编程),而且我一直在查看已经交给我的项目.在这个项目中,有一个bin目录,其中包含大量各种DLL文件.

然后,在web.conf文件中,在程序集结构内部(在XML中),添加了大量其他程序集.

我已经对SO和谷歌进行了一般性的搜索,我仍然在努力解决两者之间的差异.一种方式比另一方"更好"吗?可以提供的任何澄清将是最受欢迎的.

谢谢.

asp.net assemblies

10
推荐指数
1
解决办法
1万
查看次数

C#:如何从GAC加载程序集?

我在GAC中有"mycomp.myassembly.dll"但Load和LoadFrom会抛出找不到文件的异常,而LoadWithPartialName则返回null.我正在做以下事情:

    AssemblyName name = new AssemblyName();
    name.Name = "mycomp.myassembly.dll";

    Assembly assembly = Assembly.Load(name);
Run Code Online (Sandbox Code Playgroud)

用于mycomp.myassembly.dll文件的FileNotFound失败,并且

    Assembly assembly = Assembly.Load("mycomp.myassembly.dll");
Run Code Online (Sandbox Code Playgroud)

完全相同的消息失败了.

我仔细检查了汇编是否在GAC中(甚至再次使用gacutil/if)并且它在所有其他情况下都有效,我只是无法自己加载它.

我在这做错了什么?我错过了什么吗?

.net c# assemblies gac

10
推荐指数
1
解决办法
2万
查看次数

我可以在单个程序集中同时使用C#和C++/CLI吗?

我可以将C#和C++/CLI源文件放在一个项目中,然后编译它们以获得单个.DLL程序集吗?

.net c# assemblies c++-cli

10
推荐指数
1
解决办法
841
查看次数

有没有办法判断是否已使用优化参数编译C#程序集?

相反,有没有办法告诉它是否已启用或禁用优化参数编译.我不想知道它是发布还是调试,因为可以使用或不使用优化来启用它们.从我的角度来看,即使代码说它是发布版本,它是否真正优化了?谢谢.

c# optimization assemblies

10
推荐指数
3
解决办法
1347
查看次数

是否有一个设置来显示在Visual Studio中调试期间加载的程序集?

我相信Visual Studio中有一个设置(或设置的组合),允许您在立即窗口(或输出窗口,我不记得哪个)中查看,在调试时加载的程序集的时间戳和名称.我曾经开启此功能,因为它对于查找性能问题区域非常有用.然而可悲的是,当VS最近决定解除我的所有窗口时没有任何理由,我不得不重置我的VS设置并且现在已经丢失了.

我无法找到我的生活,我已经开启了哪个设置.

任何帮助赞赏.

assemblies visual-studio-2008 visual-studio visual-studio-debugging output-window

10
推荐指数
2
解决办法
5873
查看次数

使用旧版.NET框架中编译的程序集是否会影响整体性能?

让我们假设我们有两个程序集:

  1. Foo.Logic(在.NET 2.0框架上编译)
  2. Foo.Application(在.NET 4.0框架上编译),它引用并使用编译的Foo.Logic.

它是否对Foo.Application性能有影响(或有任何其他缺点)?

.net performance assemblies .net-4.0 .net-2.0

10
推荐指数
2
解决办法
3499
查看次数