Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 创建HtmlHelper<;T>;内部控制器_C#_Asp.net Mvc - Fatal编程技术网

C# 创建HtmlHelper<;T>;内部控制器

C# 创建HtmlHelper<;T>;内部控制器,c#,asp.net-mvc,C#,Asp.net Mvc,我在控制器()中创建了一个HtmlHelper 这就是我到目前为止所做的: public static HtmlHelper<TData> CreatePseudoHelper<TData>(this Controller Source, TData Model) { Source.ViewData.Model = Model; return new HtmlHelper<TData>(new ViewContext(Source.Contro

我在控制器()中创建了一个
HtmlHelper

这就是我到目前为止所做的:

public static HtmlHelper<TData> CreatePseudoHelper<TData>(this Controller Source, TData Model)
{
    Source.ViewData.Model = Model;
    return new HtmlHelper<TData>(new ViewContext(Source.ControllerContext, new PseudoView(), Source.ViewData, Source.TempData, TextWriter.Null), new ViewPage());
}


public class PseudoView : IView
{
    public void Render(ViewContext Context, TextWriter Writer)
    {
        throw new InvalidOperationException("Cannot render a pseudo view.");
    }
}
public static HtmlHelper CreatePseudoHelper(此控制器源,TData模型)
{
Source.ViewData.Model=模型;
返回新的HtmlHelper(新的ViewContext(Source.ControllerContext,new PseudoView(),Source.ViewData,Source.TempData,TextWriter.Null),新的ViewPage());
}
公共类伪视图:IView
{
公共void呈现(ViewContext上下文、TextWriter)
{
抛出新的InvalidOperationException(“无法呈现伪视图”);
}
}
但是,当返回创建的
HtmlHelper
时,嵌入的
ViewData
具有空
模型。当我逐步执行时,
模型
在设置为源代码的
ViewData.Model
时肯定不是空的,但一旦用于创建
HtmlHelper
,它就变为空

我错过了什么