小编Sne*_*eal的帖子

Autofac测试可以解决所有已注册的类型

我有一堆在Autofac中注册的类型,而且一些依赖项相当深.是否有内置的方法来测试我可以解决所有注册类型?我希望在应用程序启动时快速失败,而不是在几分钟后部分失败.

这就是我目前所做的,它似乎有效,但我仍然想知道是否有更好的方法.

    public void VerifyAllRegistrations()
    {
        foreach (IComponentRegistration registration in _container.ComponentRegistrations)
        {
            bool isNewInstance;
            registration.ResolveInstance(_container, new Parameter[0], new Disposer(), out isNewInstance);
        }            
    }

    private class Disposer : IDisposer
    {
        public void Dispose()
        {
            // no-op
        }

        public void AddInstanceForDisposal(IDisposable instance)
        {
            instance.Dispose();
        }
    }
Run Code Online (Sandbox Code Playgroud)

c# autofac

18
推荐指数
1
解决办法
1699
查看次数

.NET文件系统包装器库

出于某种原因,我找不到一个,但是某人必须已经创建了一个.NET IO库包装器.我希望能够模拟对File.Exists等的调用,并且内置的静态方法不能很好地解决这个问题.

.net mocking

8
推荐指数
2
解决办法
3723
查看次数

当通过chef-solo on vagrant时,SQL Server安装失败并显示"无法生成临时类"

在过去的一周里,我一直在努力解决厨师COOK-1172的问题但没有取得多大成功.我正在尝试使用Chef-Solo配置程序通过Vagrant安装SQL Server 2008 R2 Developer Edition(在我的情况下).

我已经能够通过直接通过Ruby WinRM gem重现Chef之外的问题,然后使用自定义PowerShell脚本修复它,该脚本使用传递的凭据在guest虚拟机Windows vagrant框上启动setup.exe进程.换句话说,WinRM gem调用一个远程PS脚本,该脚本在指定的凭据下启动SQL Server setup.exe,这是有效的.

但是,通过 guest-solo在guest虚拟机上运行相同的完全脚本失败,并出现InvalidOperationException:无法生成临时类.

Ruby脚本和我用于测试的嵌入式PowerShell脚本,它是从我的OS X主机调用的:

require 'winrm'

endpoint = 'http://localhost:5985/wsman'
user = password = 'vagrant'
ps = <<EOH

function ps-runas ([String] $cmd, [String] $arguments)
{
  Write-Host "ps-runas cmd: $cmd"
  Write-Host "ps-runas args: $arguments"

  $secpasswd = ConvertTo-SecureString "vagrant" -AsPlainText -Force

  $process = New-Object System.Diagnostics.Process
  $setup = $process.StartInfo
  $setup.FileName = $cmd
  $setup.Arguments = $arguments
  $setup.UserName = "vagrant"
  $setup.Password = $secpasswd
  $setup.Verb = "runas"
  $setup.UseShellExecute = $false
  $setup.RedirectStandardError …
Run Code Online (Sandbox Code Playgroud)

sql-server powershell chef-infra vagrant winrm

6
推荐指数
1
解决办法
5437
查看次数

标签 统计

.net ×1

autofac ×1

c# ×1

chef-infra ×1

mocking ×1

powershell ×1

sql-server ×1

vagrant ×1

winrm ×1