![](/img/trans.png)
[英]Should I be mixing .cshtml files and .razor files in my .NET 6 project?
[英]Should I go for WCF or simply Razor/cshtml file for creating services?
我有一個舊的Web表單,它將通過一些Ajax功能進行擴展。 我已經升級到.net 4,但想知道在創建新服務時采用哪種方法。
我在編寫wcf服務方面沒有太多經驗,而使用這樣的簡單cshtml文件編寫服務似乎要簡單得多:
@{
var db = Database.Open("MyConnectionString);
var data = db.Query("SELECT * FROM MyTable WHERE Col1 = @0", '123');
Json.Write( new { results=data}, Response.Output);
}
與創建wcf服務相比,使用此策略有哪些陷阱?
謝謝你的幫助
拉爾西
根據您對CodeCaster的評論,我認為您正在混淆Web服務和Web方法的概念。 如果您要做的只是將Ajax添加到您的應用中,那么您需要使用Web方法,這是返回json的操作方法。 而且,由於您使用的是網頁,因此您的方法是完全有效的。
使用WCF,您可以執行以下操作:
[OperationContract]
public UserNow GetCurrentUser()
{
string UserName = Membership.GetUser().UserName;
string UserToView = Request.Params["UserToView"];
//do a bunch of things.
return UserNow;
}
優點?
Response.Write
全部或不輸入任何內容) 我可能會忘記很多其他事情。
其他響應中未提及的一個考慮因素是Json.Write的性能。 它適用於帶有幾列的小型記錄集,但我注意到它的運行速度很慢, 甚至只有70條記錄和10列 。 在Web應用程序正在“ Ajaxifying”的情況下,這一點尤其重要,在這種情況下,您通常試圖使該應用程序對用戶交互更加敏感。 在這些情況下,我通常將使用Json.Write只是為了獲得概念證明的有效性,但是最后將返回並修改剃刀頁面以遍歷返回的記錄並構建帶有StringBuilder的JSON字符串並編寫該代碼。到輸出。
我不知道WCF的性能,但是如果它比循環字符串生成器快,則可以將其添加到上述好處列表中(以權衡設置它的復雜性)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.