Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>If anyone is looking for how to create <code>HtmlHelper&lt;T&gt;</code> (that's what I was after), here is an implementation that might help - my type is a class named Model:</p> <pre><code>public static HtmlHelper&lt;Model&gt; CreateHtmlHelper() { ViewDataDictionary vd = new ViewDataDictionary(new Model()); var controllerContext = new ControllerContext(new Mock&lt;HttpContextBase&gt;().Object, new RouteData(), new Mock&lt;ControllerBase&gt;().Object); var viewContext = new ViewContext(controllerContext, new Mock&lt;IView&gt;().Object, vd, new TempDataDictionary(), new Mock&lt;TextWriter&gt;().Object); var mockViewDataContainer = new Mock&lt;IViewDataContainer&gt;(); mockViewDataContainer.Setup(v =&gt; v.ViewData).Returns(vd); return new HtmlHelper&lt;Model&gt;(viewContext, mockViewDataContainer.Object); } </code></pre> <p>Or a more generic implementation:</p> <pre><code> public HtmlHelper&lt;T&gt; CreateHtmlHelper&lt;T&gt;() where T : new() { var vd = new ViewDataDictionary(new T()); var controllerContext = new ControllerContext(new Mock&lt;HttpContextBase&gt;().Object, new RouteData(), new Mock&lt;ControllerBase&gt;().Object); var viewContext = new ViewContext(controllerContext, new Mock&lt;IView&gt;().Object, vd, new TempDataDictionary(), new Mock&lt;TextWriter&gt;().Object); var mockViewDataContainer = new Mock&lt;IViewDataContainer&gt;(); mockViewDataContainer.Setup(v =&gt; v.ViewData).Returns(vd); return new HtmlHelper&lt;T&gt;(viewContext, mockViewDataContainer.Object); } </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload