2011-05-08 51 views
2

我有興趣構建可配置的ASP.NET MVC 3 UI應用程序,我的意思是在整個XML配置中設置所有UI元素屬性和屬性(可以使用其他UI編輯) 我有在谷歌搜索一些平臺,模式或通用的方法,導致這個目標,我沒有找到太多。可配置的Web UI ASP.MVC

  • 我的問題是如何讀取XML和 渲染HTML元素,它通過 的JavaScript(jQuery的)去?
  • 什麼是最好的html命名和 嵌套策略? (我知道這是不是 真正的問題,但在 的情況下,一些模式是 必要更容易 elementtraversing)
  • 有沒有辦法,我可以重用 爲此需要任何代碼?

謝謝。

回答

2

很難確切地告訴你在找什麼。

如果XML是要顯示,一些選項的數據:

  • 使用XSLT將XML轉換成HTML
    • 取決於你的目標用戶,你甚至可以讓瀏覽器通過將您交給瀏覽器的XML分配一個XSLT來完成。直接將XML返回給瀏覽器而不是HTML或ViewResult。
    • 另一種方法是在action方法中應用轉換並將其作爲字符串返回(而不是返回ViewResult)。
    • 另一種選擇是實現一個XmlActionResult。你會發現在asp.net MVC中實現Action Action很簡單。在您的控制器上,您返回一個帶有要顯示的數據的XmlActionResult。 XmlActionResult應用XSLT轉換。
    • 使用自定義代碼將XML轉換爲Html。與XSLT轉換一樣,您可以直接在操作方法中(通過調用您在別處定義的常用方法)或通過定義您自己的操作結果來完成此操作。

如果XML是不是數據,但只有你自己怎麼想顯示無論是在模式:

  • 你幾乎定義視圖引擎。你正在尋找在xml中定義你的視圖,而不是aspx,剃刀或任何其他語言。如果你推出自己的遊戲,它會受到限制,如果你使用第三方(如果你確實找到了它),你將不得不處理它所定義的語言。
  • 您可以將動態數據與asp.net MVC相結合。我不確定控件是否可以在asp.net MVC視圖中使用,但值得一試。
  • 您可以在視圖中使用DisplayFor方法併爲所有簡單類型定義模板。將它與你定義的一些幫助器結合起來,你可以將任何你想要的配置應用到這些字段中(即使這些配置不是爲了顯示任何內容)。