7

我需要将博客页面的 LinkURL 与起始页上的链接按钮绑定。我所做的实际上是找到该页面 ID 并使用它获取页面引用。

PageReference BlogPageReference = new PageReference(21);

PageData BlogPage = GetPage(BlogPageReference);

var url = BlogPage.LinkURL;

这很简单,但我不高兴页面 ID 是硬编码的。有没有更好的方法,比如按页面名称获取页面?或任何其他方式?

提前致谢 :)

4

1 回答 1

10

我将在“Page”类型的起始页上创建一个属性,这意味着该属性将具有 PageReference 类型。然后它不再是硬编码的。

将此类“设置”属性移动到单独的设置页面类型也很常见,该页面类型本身通过根或起始页(它们是常量)的属性链接。

我是凭记忆写的,所以请原谅代码中的任何错误。

var startPage = DataFactory.Instance.Get<StartPage>(PageReference.StartPage);
var settingsPage = DataFactory.Instance.Get<SettingsPage>(startPage.SettingsPage);
var blogPageRef = settingsPage.BlogPage;

SettingsPage 和 BlogPage 的定义位置

public virtual PageReference xxxPage {get; set; }

在您的页面类型类中。

于 2013-09-07T09:14:20.437 回答