相关疑难解决方法(0)

剃刀视图引擎 - 如何添加部分视图

我想知道,如果可能的话,使用新的剃刀视图引擎渲染局部的最佳方法.我知道这是当时没有完全完成的事情

现在我使用RenderPage来呈现用户控件:

@RenderPage("~/Views/Shared/LocaleUserControl.cshtml",ViewData.Model)
Run Code Online (Sandbox Code Playgroud)

调用RenderPage的页面使用布局(主)页面,其中定义了三个部分:TitleContent,HeadContent和Maincontent.当我尝试从此页面渲染我的语言环境控件时,似乎还需要这些部分 - 它们应该只在调用页面中需要并且存在.我收到以下消息,无论我是否在部分视图中包含这些部分(显然我不想包含这些部分,但它似乎是一个有趣的调试点......).

以下部分已定义,但尚未在布局页面'〜/ Views/Shared/LocaleUserControl.cshtml'上呈现:TitleContent; HeadContent; 搜索Maincontent

我的部分观点如下(改编自以下链接):

@inherits System.Web.Mvc.WebViewPage<LocaleBaseModel>
@using System.Web.UI;

<p>
     @Html.LabelFor(model => Model.CountryName)
    <br />
    @Html.DropDownListFor(model => Model.CountryName,null, string.Empty, new { @class = "text", accesskey="u"})
</p>
<p>
     @Html.LabelFor(model => Model.StateProvince)
    <br />
     @Html.DropDownListFor(model => Model.StateProvince, null, string.Empty, new { @class = "text", accesskey="t" })
</p>


<script type="text/javascript">
    $(function () {
        var countries = $("#CountryName");
        var statesprovinces = $("#StateProvince");
        countries.change(function () {
            statesprovinces.find('option').remove();
            var url = '@Url.Action("GetStatesProvinces", "Base")';
            $.getJSON(url, { countryId: countries.val() }, …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc razor

84
推荐指数
1
解决办法
10万
查看次数

使用ASP.NET MVC Razor进行自定义控件

如何在ASPNET.MVC Razor中使用自定义控件?

我想在Razor视图上使用自定义控件.例如:

<mycontrols:something>@Model.MyVar</mycontrols:something>
Run Code Online (Sandbox Code Playgroud)

要么

<mycontrols:something myattribute="@Model.MyVar" />
Run Code Online (Sandbox Code Playgroud)

请注意,我的目标是仅使用从MvcControl派生的少数控件,仅用于琐碎的重复ui内容.

我试图在视图的顶部找到类似于@Register的语法,但没有任何成功.

然后我去了web.config,添加

<pages>
   <controls>
      <add tagPrefix="mycontrols" namespace="mynamespace" assembly="myassembly"/>
   </controls>
</pages>
Run Code Online (Sandbox Code Playgroud)

但看起来在渲染时会忽略自定义控件.

有人可以帮忙吗?

...可能有点老式,但有时也可以使用自定义控件来使代码更清洁!

asp.net-mvc razor asp.net-mvc-3

19
推荐指数
3
解决办法
2万
查看次数

标签 统计

asp.net-mvc ×2

razor ×2

asp.net-mvc-3 ×1

c# ×1