C# 如何在Sitecore中创建新页面

C# 如何在Sitecore中创建新页面,c#,.net,web-config,sitecore,ascx,C#,.net,Web Config,Sitecore,Ascx,我需要在Sitecore中添加一个页面: abc.com/link1?id=1*something=BLABLA abc.com/link2?id=2*something=BLABLA abc.com/linkN?id=N*something=BLABLA 上面的所有链接都代表一个页面,该页面反过来为用户提供一个基于link1,link2的模板链接n这也是一个可能会被证明有用的链接。非常简洁地说,我的一般方法是创建一个模板,在内容下创建一个页面,然后指定一个将其链接到asp.net内容的布局

我需要在Sitecore中添加一个页面:

  • abc.com/link1?id=1*something=BLABLA
  • abc.com/link2?id=2*something=BLABLA
  • abc.com/linkN?id=N*something=BLABLA

上面的所有链接都代表一个页面,该页面反过来为用户提供一个基于
link1
link2
的模板<代码>链接n

这也是一个可能会被证明有用的链接。非常简洁地说,我的一般方法是创建一个模板,在内容下创建一个页面,然后指定一个将其链接到asp.net内容的布局。

我觉得您可以创建三个新项目(link1link2linkN)。这些项可以共享相同的“基本”模板,该模板包含它们的所有共同点(布局、公共/共享控件等)。在那里,如果您需要每个项目略有不同,您可以为继承自基础模板(推荐)的每个项目创建一组新模板,或者直接修改每个项目的演示文稿详细信息

这就是说,如果您确实需要一个接受多个路由和查询字符串的单个项,那么您有几个选项:

  • 如果该项存在于站点的根目录下,则可以创建一个 项目,并为您希望发送到的任何其他名称创建 这个项目。例如,名为link的项可以有 link1link2linkN等。查询字符串将在所有别名页面上工作。使用这种方法,您不会像您描述的那样更改“布局”。相反,您的布局(或一个或多个子布局)将对可用的查询字符串作出反应,并提供不同的视图和/或行为。我喜欢将此称为使子布局“更智能”:

  • 如果您需要一个更健壮的解决方案,允许在 如果是网站的根目录,您可能需要研究扩展 HttpRequest管道中的UrlResolver


  • 如果要使用单个项来处理所有三个链接,还可以使用通配符项,从httpcontext中读取查询字符串,并根据查询字符串执行任何操作


    当我看到你们的问题时,我脑海中浮现的另一件事是:你们想通过提问实现什么?可能是我,但这看起来有点像你正在尝试使用基于joomla(或其他cms)的URL技术创建一个Sitecore站点。

    看看这是否有帮助:我认为如果事情不顺利,你也可以使用HttpHandler。我已经有一段时间没有使用Sitecore了。事实上,我对Sitecore一无所知。你能告诉我如何创建项目吗?我可以在站点核心的gui中找到布局和模板,但找不到项目。请详细解释
    创建三个新项目(link1、link2和linkN)。这些项可以共享相同的“基本”模板,该模板包含它们的所有共同点(布局、公共/共享控件等)。从这里开始,如果您需要每个模板都略有不同,您可以为从基本模板继承的每个项目创建一组新模板(推荐)
    Ok,没问题,听起来您对Sitecore非常陌生。我会在挖得太深之前通读一遍。您可能还想参加Mill Valley的Sitecore开发人员培训。在Sitecore中,即使是最简单的页面,也有很多活动部分,最好慢慢来,真正理解每一部分的作用。