Я думаю, вы просто перешли с обычного asp.net на этот MVC, как и я.
В asp.net mvc мы используем HTML-помощник, например @Html.ActionLink()
, @Html.CheckBox()
и @Html.CheckBox()
youможете добавить свое собственное расширение, например @Html.Grid()
, создав такой класс:
using System;
using System.Web.Mvc;
namespace MyNamespace.Helpers
{
public static class GridExtensions
{
public static string Grid(this HtmlHelper helper, <any parameter you think to generate the html>)
{
// render the html table here based on the parameter
}
}
}
Поместите этот файл класса в папку Helpers под root, если хотите.См. this , чтобы создать собственное расширение.Вы можете найти лучший jQuery, такой как jqGrid и реализовать его в расширении.
Если вы считаете, что расширение не подходит, вы можете использовать свой собственный класс с форматом @ class.method () для возвратастрока HTML.Не забудьте использовать @using MyNamespace в начале файла представления vcshtml ИЛИ в ~ / View / web.config, кроме имени сборки Razor, чтобы убедиться, что класс или расширение доступны.Он также будет поддерживать intellisense.
Если вы хотите определить «UserControl» в том же файле * .cshtml, потому что он просто специфичен для представления, просто используйте @helper function()
, как сказал ScottGu здесь он минимизирует код на странице, просто позвонив @function()
.
asp.net и asp.net mvc полностью отличается с точки зрения Control
.Вы не можете использовать какой-либо элемент управления из обычного asp.net в asp.net mvc.
Редактировать : Некоторые опечатки и добавить дополнительную информацию.