【发布时间】:2019-02-06 08:06:42
【问题描述】:
使用 umbraco 为网站访问者提供一种编辑表单的最佳方法是什么?
一个非常简单的例子是一个有 2 个页面的应用程序(网站)。
首页:国家/地区列表。
因此,在 umbraco 中,我创建了一个带有名为“列表”的模板的文档类型 访问页面时会调用 Surface 控制器。该控制器获取国家/地区列表(比如说从对象列表中)
public class Country
{
public Guid Id { get; set; }
public string Name { get; set; }
public Country(string name)
{
Id = new Guid(); //Or something likewise... whatever
Name = name;
}
}
List<Country> countries = new List<Country>();
countries.add(new Country("UK"));
countries.add(new Country("US"));
countries.add(new Country("France"));
countries.add(new Country("Belgium"));
表面控制器取回这个对象并在其剃刀视图中呈现这些国家的列表,每个国家旁边都有一个名为“更改这个国家”的按钮
回到 Umbraco,我还有第二种文档类型,其模板名为“编辑” 这应该用于该国家/地区的某些编辑机制...
我也希望有这样的路由
http(s)://localhost:12345/Edit/2354
而不是
http(s)://localhost:12345/Edit?id=2354
最好的办法是什么? 我已经用表面控制器试过了,但我不能发回 我已经尝试过 Route Hijacking 并完全劫持了 MVC 路由。
我还在互联网上搜索了很多小时。但我无法为这个非常简单的问题找到一个好的解决方案。 至少在我看来,这个问题非常简单:) 但我无法理解它。
我希望有人能解决这个问题。
【问题讨论】:
-
我不同意另一张海报,即在这种情况下您不需要表面控制器,但请先发布您的控制器代码并编辑您的模型,因为我不确定您的模型到底是什么或什么是你得到的回应。
标签: c# asp.net-mvc-5 umbraco backend umbraco7