可以在ASP.NET MVC项目中使用具有强类型视图的Polymer库吗?
或者......我可以使用自定义元素和Razor但是Polymer Library太大了。
还有其他办法吗?
答案 0 :(得分:0)
您可以使用Polymer库而不使用Razor创建的元素。我用简单的元素测试,但我认为它适合你:
我有一个产品类
public class Product
{
public string Name { get; set; }
public float Price { get; set; }
public float Qtd { get; set; }
}
我的控制器有两个动作:
> public class HomeController : Controller
>{
> //
> // GET: /Home/
> public ActionResult Index()
> {
> return View();
> }
>
> public ActionResult Products(string name, float price, int qtd)
> {
> Product product = new Product();
>
> product.Name = name;
> product.Price = price;
> product.Qtd = qtd;
>
> return View();
> }
> }
当你放下你的元素时,最后是.cshtml
>
<!DOCTYPE html>
>
> <html>
> <head>
> <meta name="viewport" content="width=device-width" />
> <title>Produtos</title> </head> <body>
> <div>
> <form action="/Home/Products">
> <label>Name</label>
> <input type="text" name="name" />
>
> <label>Price</label>
> <input type="number" name="price" />
>
> <label>Qtd</label>
> <input type="number" name="qtd" />
>
> <input type="submit" value="Insert" />
> </form>
> </div>
></body>
></html>
我有一个表单,其操作指向/ Home / Products。当您提交时,表单将调用您的产品操作,通过您给他们的相应名称传递您的filds。 .cshtm中的“name”,“price”,“qtd”。操作产品必须具有.cshtml中元素的seme名称。这样您就可以获得任何HTML,聚合物或其他元素的信息。
奖金,你可以用这种方式获得相同的结果:
<input type="text" name="product.Name" /> <input type="number" name="product.Price" /> <input type="number" name="product.Qtd" />
行动
> public ActionResult Products(Product product)
> {
> return View();
> }