gpt4 book ai didi

StructureMap 构造函数参数

转载 作者:行者123 更新时间:2023-12-03 20:21:45 25 4
gpt4 key购买 nike

我是 StructureMap 的新手。如何使用流畅的配置为以下类定义构造函数参数?谢谢

  public BlobContainer(CloudStorageAccount account
, string containerName
, string contentType
, BlobContainerPermissions blobContainerPermissions)
{

}

最佳答案

对于原始类型,您将按照@ozczecho 的回答进行操作:

For<BlobContainer>()
.Use<BlobContainer>()
.Ctor<string>("containerName").Is("theContainerName")
.Ctor<string>("contentType").Is("theContentType");

前提是这些值在注册时是已知的。对于非原始类型,您也可以通过这种方式执行此操作,但是您会失去容器以这种方式为您提供的灵活性。最好定义一个默认或命名实例并使用它(容器将自动为您解析默认实例)。通过定义默认值,您只需更改一个注册即可轻松更改应用程序中某个类型的所有依赖项。
For<CloudStorageAccount>().Use<TheCloudStorageAccountType>();

如果依赖项是具有结构映射已知依赖项的构造函数的具体类型,则您不必将其注册到容器中,它将被自动解析。

所以如果 CloudStorageAccount 是一个具体的类,你只需要在 Structure Map 中注册它的依赖项。

关于StructureMap 构造函数参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5698274/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com