gpt4 book ai didi

asp.net-mvc - 带有 ModelStateWrapper 的 Controller ModelState

转载 作者:行者123 更新时间:2023-12-02 18:11:09 26 4
gpt4 key购买 nike

大家好,我正在使用结构映射来实现依赖注入(inject)。我创建了 ModelStateWrapper 类来在服务层发送模型状态,该类在构造函数中获取对 Controller ModelState 的引用。在 Bootstrap 中我注册了我的类型:

ForRequestedType<ISourceService>()
.TheDefaultIsConcreteType<SourceService>();
ForRequestedType<IValidationDictionary>()
.TheDefaultIsConcreteType<ModelStateWrapper>();

我如何在此处向 ModelStateWrapper 提供 Controller 模型状态的引用?

附:抱歉我的英语:)

最佳答案

您需要提供更多信息,但这是我对您所拥有的内容的最佳猜测:

public class ModelStateWrapper : IValidationDictionary
{
...
private readonly ModelState _modelState;
public ModelStateWrapper(ModelState modelState)
{
_modelState = modelState;
}
...
}

如果您想将变量(在本例中为 Controller 的模型状态)传递给 ModelStateWrapper,您几乎肯定需要通过调用 ObjectFactory 来显式执行此操作。

示例:

MyController : Controller 
{
...
public MyAction()
{
...
IValidationDictionary validationDictionary = ObjectFactory
.With<ModelState>(this.ModelState)
.GetInstance<IValidationDictionary>();
...
}
...
}

有关详细信息,请参阅此文档:

Passing Arguments to StructureMap at Runtime

关于asp.net-mvc - 带有 ModelStateWrapper 的 Controller ModelState,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/755170/

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