2015-08-27 22 views
-2

這是我catch(exception ex){MessageBox.Show("My Own Message")}在抓框中顯示我自己的消息

如何顯示在Asp.net MVC控制器我自己的消息。 如果有其他方式顯示消息請回復

+1

'MessageBox'是WinForms,而不是MVC。 –

+0

您需要將錯誤消息發送給客戶端,並將其顯示在那裏。您編寫的代碼會嘗試將其顯示在服務器上的窗口工作站上,這可能或(更可能)對操作員不可見 –

回答

1

您當然不能在網絡應用程序中使用MessageBox.Show()。對於Web應用程序,您實際上將響應中包含消息(在頁面中),並將樣式/呈現在頁面上,不過您喜歡。

例如,如果你只是想從控制器到視圖發送「信息」,您可以設置爲模型上的屬性:

someModel.SomeProperty = "Some Message"; 

或者,在最壞的情況,作爲其一部分像ViewData

ViewData["SomeProperty"] = "Some Message"; 

然後,在視圖中,你會顯示它。例如,某個地方有它的標記:

@if(!string.IsNullOrEmpty(Model.SomeProperty)) { 
    <div id="message">@Model.SomeProperty</div> 
} 

那麼你可以申請任何你想要的造型或影響到div(或任何標記使用那裏)。您還可以在JavaScript代碼中包含該消息,以防您想使用它來顯示它。例如,如果你想要一個簡單的alert()

@if(!string.IsNullOrEmpty(Model.SomeProperty)) { 
    <script type="text/javascript"> 
     alert('@Model.SomeProperty'); 
    </script> 
} 

(您可能需要明智地使用<text></text>標籤時,將JavaScript代碼在剃刀塊有時語法混淆的渲染引擎)