2012-03-29 112 views
0

我想從XML呈現一些應用程序的靜態頁面,即我打算有一個基本頁面和xml包含頁面和xslt的結構,它將將此xml轉換爲html,並在運行時我將把這個html渲染到我的視圖並顯示這個視圖 有沒有任何方法/例子來做同樣的事情。請幫助 下面是示例XML從xml渲染mvc3中的頁面

 <!DOCTYPE html> 
    <html> 
    <head> 
    <title>Create</title> 
    <script src="/Scripts/jquery-1.5.1.min.js" type="text/javascript" /> 
     <link href="/Content/themes/base/jquery-ui.css" rel="stylesheet" type="text/css" /> 
     <link href="/Content/Site.css" rel="stylesheet" type="text/css" /> 
     <script src="/Scripts/jquery-ui.js" type="text/javascript" /> 
     <script src="/Scripts/jquery.validate.min.js" type="text/javascript" /> 
     <script src="/Scripts/jquery.validate.unobtrusive.min.js" type="text/javascript" /> 
<script src="/Scripts/jquery.unobtrusive-ajax.js" type="text/javascript" /> 

    </head> 
    <body> 
<div id="menucontainer"> 
    <ul id="menu"> 
    <li> 
     <a href="/">Rutu</a> 
    </li> 
    <li> 
     <a href="/Employee">Employee</a> 
    </li> 
    </ul> 
</div> 
<h2>Create</h2> 
<script src="/Scripts/jquery.validate.min.js" type="text/javascript" /> 
<script src="/Scripts/jquery.validate.unobtrusive.min.js" type="text/javascript" /> 
<form action="/Employee/Create" method="post"> 
    <fieldset> 
    <legend>EmployeeDetailsModel</legend> 
    <div class="editor-label"> 
     <label for="EmpName">EmpName</label> 
    </div> 
    <div class="editor-field"> 
     <input class="text-box single-line" id="EmpName" name="EmpName" type="text" value="" /> 
     <span class="field-validation-valid" data-valmsg-for="EmpName" data-valmsg-replace="true" /> 
    </div> 
    <div class="editor-label"> 
     <label for="DeptId">DeptId</label> 
    </div> 
    <div class="editor-field"> 
     <input class="text-box single-line" data-val="true" data-val-number="The field DeptId must be a number." data-val-required="The DeptId field is required." id="DeptId" name="DeptId" type="text" value="" /> 
     <span class="field-validation-valid" data-valmsg-for="DeptId" data-valmsg- replace="true" /> 
    </div> 
    <p> 
     <input type="submit" value="Create" /> 
    </p> 
    </fieldset> 
</form> 
<div> 
    <a href="/Employee">Back to List</a> 
</div> 

+0

你是什麼意思的XML包含頁面的結構?你能舉一個例子說明這樣的XML可能是什麼樣的?預期的產出? – 2012-03-29 11:42:48

+0

嗨Darin附上示例xml文件 – Rutu 2012-03-29 12:12:40

+0

我只看到html,沒有xml ... – jrummell 2012-03-29 12:29:59

回答

0

有一個good blog post here,它描述瞭如何創建HTML助手來在視圖中呈現XSLT。您只需調用視圖中的助手類傳遞到XSLT和XML的路徑即可。我修改了這個幫助器,以便您還可以將XSLT和XML作爲字符串傳遞以實現相同的結果。

+0

感謝您的這個鏈接你能否提供我在該示例中使用的xslt以及如何進行驗證? – Rutu 2012-03-30 10:47:46

+0

@Rutu - 你指的是哪個例子?我在這方面所做的工作是爲了驗證概念是否可行,因爲我們正在從基於ASP.NET Forms的應用程序中廣泛使用XSLT到MVC和Razor。我們沒有采用這種方法,因爲我們確定Razor在MVC環境中比XSLT更好。看到我對這個問題的回答http://stackoverflow.com/questions/9826676/reasons-for-using-xsl-when-razor-templates-exist。 – 2012-03-30 12:04:44

+0

我指的是http://tutorialgenius.blogspot.in/2011/06/c-mvc-3-render-xslt-htmlhelper.html鏈接我想使用這種機制的單個頁面呈現相同的模型,但不同的視圖沒有。以xml提供的字段 – Rutu 2012-03-30 12:39:10