簡體   English   中英

asp.net sqldatasource vs 在后面的代碼中執行

[英]asp.net sqldatasource vs doing it in code behind

這很可能歸結為一個哲學問題,但在 aspx 文件中使用<asp:sqldatasource>與在后面的代碼中完成所有工作之間真的有什么重大區別嗎?

如果是這樣,它們是什么,為什么? 我知道我有自己的喜好,但我只是好奇別人的想法。

編輯:

我故意沒有把我的偏好放在盡可能多地放在代碼后面甚至是 DAO 中。 我很好奇其他人的想法,因為我將不得不更新一堆在 apsx 文件中調用 sqldatasource 的代碼。

感謝所有回復的人。 感謝您的意見。

在 asp.net 頁面中嵌入 SQLDataSource 會將表示層與數據訪問層耦合,從而降低可測試性和靈活性。 我強烈建議將您的數據連接移至它們自己的類,並創建一個數據訪問層,然后您的頁面代碼可以從中提取。

理想情況下,您會將其進一步分離為 N 層解決方案。 關聯

對於一個簡單的應用程序,沒有任何理由不使用 asp:sqldatasource,但是許多開發人員希望將數據訪問策略的細節與視圖邏輯分開。

如果您想切換到像 nHibernate 這樣的 ORM 怎么辦? 您將不得不 go 從您的 aspx 頁面中刪除所有 asp:sqldatasource。 如果您在后面的代碼中進行了接線,則不必觸摸 aspx 頁面。 如果你進一步抽象化,比如說進入 DAO,你甚至不必接觸你的代碼,你可以切換你的 DAO。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM