2014-02-06 38 views
0

生成動態的傳統URL(即不是動作/控制器路由)我需要創建一個包含JSON值的url的動態標記,並將其發佈到外部支付網關。最後,我想是這樣的:使用@ Html.ActionLink

支付這筆金額

所以我想我會做:

@ Html.ActionLink( 「支付這筆金額」,「https://xyz.com/PayNow?paymentData= { 'STOREID': '1964年' , '人':{ '姓': '喬', 'MiddleInitial': 'A', '名字': '史密斯'}, '項目':{ '1':{ '價格': '250',」代號 ':' 學費'}}}「)

但由此產生的標籤使得動作/控制器格式的網址:

MyWebSite/myController的/ https://xyz.com/PayNow?paymentData= {'StoreID':'1964','Person':{'FirstName':'Joe','MiddleInitial':'A','LastName':'Smith'},'Item':{'1':{ '價格':'250','代碼':'TUITION'}}}

...當然它失敗了。

我只想要一個傳統的URL而不是路線。我沒有看到一個簡單的URL的重載。或者是否有另一個助手可以用來創建非MVC URL?

我該怎麼做?謝謝!

謝謝。

+0

是xyz.com不同的主機比你的MVC網站? – sarvesh

+0

是的,它是一個外部網站。 – SKale

+0

然後@Dismissile的答案應該可以工作。 – sarvesh

回答

2

@ Html.ActionLink用於爲您的站點中的控制器/操作創建標籤。如果你只是想創建一個鏈接到另一個網站只使用純OLE HTML:

<a href="https://xyz.com">Pay Now</a> 

如果你需要從模型中使用的屬性,你可以在代碼中建立的網址,然後引用,在標籤:

@{ 
    string url = "https://xyz.com?id=" + Model.Id; 
} 

<a href="@url">Pay Now</a> 

<a href="https://[email protected]">Pay Now</a> 
+0

你的建議看起來不錯,謝謝。我現在會嘗試。 – SKale

+0

嗨,所以@url不起作用。它會生成: http:// MyWebSite/MyController/MyAction/https://xyz.com ... – SKale

+0

嗯......有趣的是,我認爲您的第二個建議與第一個建議完全相同。即 Pay Now 我會看看如果我可以以某種方式在代碼中而不是在視圖中執行此操作。謝謝!標記爲已回答。 – SKale