2017-09-16 67 views
-1

我有一個excel文件上傳到服務器,讀取內容,進行一些驗證和含量恢復到原始html格式的瀏覽器的要求。 我的問題是,如果我的控制器可以讀到該文件的內容,並建立動態HTML和發送HTML內容返回給客戶端。這裏模型沒有被使用,這是一個糟糕的設計模式嗎?ASP.Net MVC中的模型是必需的還是可選的?

+2

在你所描述的情況,你的模型是你應該用於渲染HTML中的數據。從理論上講,該模型應該傳遞給視圖,並且您將使用例如Razor Html助手提供頁面。我懷疑這可以通過錯誤的方式輕鬆完成,例如連接字符串並強制Html響應。所以我甚至沒有看到不使用MVC模式的好處。我只能猜測好處是,你不知道MVC,這可以讓你避免在MVC項目中使用MVC。也許如果你給更多的背景可能會改變這個結論。 – derloopkat

+1

模型 - 視圖 - 控制器模式應該沒有字面定義它的三分之一。經常會發生這樣的情況:這個時間你不需要使用某個部分。這可以解決。或以後咬你的屁股。通常我們應用模式,即使現在是額外的工作,也永遠不會被咬人。通常你必須投入一些工作,以後節省大量的工作。 – Christopher

+1

投票結束您的問題,您提出了一個愚蠢的問題,模型不是必需的,以及它是否是一個糟糕的設計模式,對您現在的需求和未來潛在的需求是完全主觀的 –

回答

1

渲染在服務器端所需的HTML一個字符串 然後把它放在一個模型只有一個字符串,然後把它查看和使用Html.Raw()如下概念表現出來:

型號:

public class RenderedHtmlViewModel 
{ 
     public string RenderedHtml {get;set; } 
} 

查看:

@Html.Raw(Model.RenderedHtml) 
1

你應該避免這樣做。您應該基於Excel文件內容構建模型,然後您應該基於該模型創建視圖。

+0

如果列數更改?在這種情況下如何定義模型? – user8620538

+0

如果不知道你在做什麼的更多細節,很難說。你能讀取所有的列和行到二維數組嗎?然後將該2D數組發送到視圖並使用嵌套循環遍歷它? –

相關問題