คำถามติดแท็ก asp.net-mvc

ASP.NET MVC Framework เป็นเฟรมเวิร์กแอปพลิเคชันเว็บแบบโอเพนซอร์ซและเครื่องมือที่ใช้โมเดลของโมเดล model-view-controller (MVC) ที่ปรับให้เหมาะกับเว็บแอ็พพลิเคชันและสร้างบนพื้นฐานเทคโนโลยี ASP.NET

5
คุณเปลี่ยนเส้นทางไปยังเพจโดยใช้กริยา POST ได้อย่างไร?
เมื่อคุณโทรRedirectToActionภายในคอนโทรลเลอร์จะเปลี่ยนเส้นทางโดยอัตโนมัติโดยใช้ HTTP GET ฉันจะบอกอย่างชัดเจนให้ใช้ HTTP POST ได้อย่างไร ฉันมีการดำเนินการที่ยอมรับทั้งคำขอ GET และ POST และฉันต้องการให้สามารถRedirectToActionใช้ POST และส่งค่าบางอย่างได้ แบบนี้: this.RedirectToAction( "actionname", new RouteValueDictionary(new { someValue = 2, anotherValue = "text" }) ); ฉันต้องการให้someValueและanotherValueค่าถูกส่งโดยใช้ HTTP POST แทน GET ไม่มีใครรู้วิธีการทำเช่นนี้?

5
ข้อดีของการสร้างที่เก็บทั่วไปเทียบกับที่เก็บเฉพาะสำหรับแต่ละอ็อบเจ็กต์?
เรากำลังพัฒนาแอปพลิเคชัน ASP.NET MVC และตอนนี้กำลังสร้างคลาสที่เก็บ / บริการ ฉันสงสัยว่าการสร้างอินเทอร์เฟซ IRepository ทั่วไปมีประโยชน์หรือไม่เมื่อเทียบกับแต่ละ Repository ที่มีอินเทอร์เฟซและชุดวิธีการเฉพาะของตัวเอง ตัวอย่างเช่นอินเทอร์เฟซ IRepository ทั่วไปอาจมีลักษณะดังนี้ (นำมาจากคำตอบนี้ ): public interface IRepository : IDisposable { T[] GetAll<T>(); T[] GetAll<T>(Expression<Func<T, bool>> filter); T GetSingle<T>(Expression<Func<T, bool>> filter); T GetSingle<T>(Expression<Func<T, bool>> filter, List<Expression<Func<T, object>>> subSelectors); void Delete<T>(T entity); void Add<T>(T entity); int SaveChanges(); DbTransaction BeginTransaction(); } …

4
ASP.Net MVC Html.HiddenFor ที่มีค่าผิด
ฉันใช้ MVC 3 ในโครงการของฉันและฉันเห็นพฤติกรรมแปลก ๆ ฉันกำลังพยายามสร้างฟิลด์ที่ซ่อนอยู่สำหรับค่าเฉพาะในโมเดลของฉันปัญหาคือด้วยเหตุผลบางประการค่าที่ตั้งบนฟิลด์ไม่สอดคล้องกับค่าในโมเดล เช่น ฉันมีรหัสนี้เช่นเดียวกับการทดสอบ: <%:Html.Hidden("Step2", Model.Step) %> <%:Html.HiddenFor(m => m.Step) %> ฉันคิดว่าฟิลด์ที่ซ่อนทั้งสองจะมีค่าเท่ากัน สิ่งที่ฉันทำคือตั้งค่าเป็น 1 ในครั้งแรกที่ฉันแสดงมุมมองจากนั้นหลังจากการส่งฉันจะเพิ่มค่าของฟิลด์ Model ขึ้น 1 ดังนั้นครั้งแรกที่ฉันแสดงผลหน้าทั้งสองตัวควบคุมมีค่า 1 แต่ครั้งที่สองค่าที่แสดงผลคือ: <input id="Step2" name="Step2" type="hidden" value="2" /> <input id="Step" name="Step" type="hidden" value="1" /> อย่างที่คุณเห็นค่าแรกถูกต้อง แต่ค่าที่สองดูเหมือนจะเหมือนกับครั้งแรกที่ฉันแสดงมุมมอง ฉันขาดอะไรไป? ผู้ช่วย * สำหรับ Html กำลังแคชค่าในทางใดทางหนึ่งหรือไม่? ถ้าเป็นเช่นนั้นฉันจะปิดใช้งานการแคชนี้ได้อย่างไร? ขอบคุณสำหรับความช่วยเหลือของคุณ.

10
การเชื่อม MVC DateTime ด้วยรูปแบบวันที่ไม่ถูกต้อง
ขณะนี้ Asp.net-MVC อนุญาตให้มีการเชื่อมโยงวัตถุ DateTime โดยนัย ฉันมีการดำเนินการตามแนวของ public ActionResult DoSomething(DateTime startDate) { ... } สิ่งนี้แปลงสตริงจากการโทร ajax เป็น DateTime ได้สำเร็จ อย่างไรก็ตามเราใช้รูปแบบวันที่ dd / MM / yyyy; MVC กำลังแปลงเป็น MM / dd / yyyy ตัวอย่างเช่นการส่งคำเรียกร้องให้ดำเนินการด้วยสตริง '09 / 02/2009 'จะส่งผลให้ DateTime เป็น '02 / 09/2009 00:00:00' หรือวันที่ 2 กันยายนในการตั้งค่าท้องถิ่นของเรา ฉันไม่ต้องการม้วนตัวยึดแบบจำลองของฉันเองเพราะรูปแบบวันที่ แต่ดูเหมือนว่าไม่จำเป็นที่จะต้องเปลี่ยนการดำเนินการเพื่อยอมรับสตริงจากนั้นใช้ DateTimeParse ว่า MVC …

4
ASP.NET MVC: จุดประสงค์ของ @section คืออะไร? [ปิด]
มันยากที่จะบอกว่ากำลังถามอะไรที่นี่ คำถามนี้คลุมเครือคลุมเครือไม่สมบูรณ์กว้างเกินไปหรือมีวาทศิลป์และไม่สามารถตอบได้อย่างสมเหตุสมผลในรูปแบบปัจจุบัน สำหรับความช่วยเหลือในการทำความเข้าใจคำถามนี้เพื่อที่จะสามารถเปิด, ไปที่ศูนย์ช่วยเหลือ ปิดให้บริการใน7 ปีที่ผ่านมา สำหรับโปรแกรมประยุกต์ ASP.NET MVC ผมเห็นบทความบล็อกนี้ ผู้เขียน ScottGu เพิ่ม@sectionลงใน Index.cshtml ฉันมีคำถามสองสามข้อ (อ้างอิงจากบทความด้านบน): Index.cshtml เป็นมุมมองที่แชร์หรือไม่ โค้ดตัวอย่างใช้@sectionโค้ดในมุมมองเฉพาะ ทำไม? ใครช่วยอธิบายเหตุผลและเวลาที่ฉันจะใช้@sectionใน View ได้ไหม
132 asp.net-mvc 

6
คุณตั้งค่าหน้าเริ่มต้นสำหรับการดีบักในแอปพลิเคชัน ASP.NET MVC ได้อย่างไร
คุณจะเริ่มดีบักแอปพลิเคชันที่รูทแอปพลิเคชันได้อย่างไร ตัวอย่างเช่น: http: // localhost: 49742 / ฉันมักจะได้รับหน้าที่ไม่มีอยู่เช่น http: // localhost: 49742 / Views / Home / About.aspx โปรดทราบว่าจะเป็นการดีหากเริ่มต้นที่http: // localhost: 49742 / Views / Home / About
131 asp.net-mvc 

5
การสร้าง URL ในคอนโทรลเลอร์. NET MVC
ฉันต้องสามารถสร้างลิงค์ใน Action บนคอนโทรลเลอร์เพื่อส่งอีเมลได้ แนวทางปฏิบัติที่ดีที่สุดในการทำสิ่งนี้คืออะไร? ฉันไม่ต้องการสร้างมันเองในกรณีที่เส้นทางของฉันเปลี่ยนไป ฉันควรดูอีเมลแต่ละฉบับและแสดงผลและส่งหรือไม่ นั่นอาจเป็นวิธีที่ดีในการทำ

5
ทำไม CheckBoxFor สร้างการแสดงผลแท็กอินพุตเพิ่มเติมและฉันจะรับค่าโดยใช้ FormCollection ได้อย่างไร
ในแอพ ASP.NET MVC ของฉันฉันกำลังแสดงช่องทำเครื่องหมายโดยใช้รหัสต่อไปนี้: <%= Html.CheckBoxFor(i=>i.ReceiveRSVPNotifications) %> ตอนนี้ฉันเห็นว่าสิ่งนี้ทำให้ทั้งแท็กช่องทำเครื่องหมายและแท็กอินพุตที่ซ่อนอยู่ ปัญหาที่ฉันมีคือเมื่อฉันลองเรียกคืนค่าจากช่องทำเครื่องหมายโดยใช้ FormCollection: FormValues["ReceiveRSVPNotifications"] ฉันได้รับค่า "จริงเท็จ" เมื่อดู HTML ที่แสดงผลฉันสามารถดูสิ่งต่อไปนี้: <input id="ReceiveRSVPNotifications" name="ReceiveRSVPNotifications" value="true" type="checkbox"> <input name="ReceiveRSVPNotifications" value="false" type="hidden"> ดังนั้นคอลเลกชัน FormValues ​​จึงดูเหมือนเข้าร่วมทั้งสองค่าเนื่องจากมีชื่อเหมือนกัน ความคิดใด ๆ


6
วิธีการขยายคุณสมบัติที่มีอยู่ของ User.Identity
ฉันใช้ MVC5 Identity 2.0 เพื่อให้ผู้ใช้ล็อกอินเข้าสู่เว็บไซต์ของฉันซึ่งรายละเอียดการตรวจสอบความถูกต้องจะถูกเก็บไว้ในฐานข้อมูล SQL Asp.net Identity ได้รับการปรับใช้ในรูปแบบมาตรฐานตามที่พบได้ในแบบฝึกหัดออนไลน์มากมาย คลาส ApplicationUser ใน IdentityModels ได้รับการขยายเพื่อรวมคุณสมบัติที่กำหนดเองบางอย่างเช่น OrganizationId จำนวนเต็ม แนวคิดคือผู้ใช้จำนวนมากสามารถสร้างและกำหนดให้กับองค์กรทั่วไปเพื่อวัตถุประสงค์ด้านความสัมพันธ์ของฐานข้อมูล public class ApplicationUser : IdentityUser { public async Task<ClaimsIdentity> GenerateUserIdentityAsync(UserManager<ApplicationUser> manager) { // Note the authenticationType must match the one defined in CookieAuthenticationOptions.AuthenticationType var userIdentity = await manager.CreateIdentityAsync(this, DefaultAuthenticationTypes.ApplicationCookie); // Add custom user …

12
การตรวจสอบตามเงื่อนไข ASP.NET MVC
จะใช้คำอธิบายประกอบข้อมูลเพื่อทำการตรวจสอบความถูกต้องตามเงื่อนไขกับรุ่นได้อย่างไร ตัวอย่างเช่นสมมติว่าเรามีโมเดลดังต่อไปนี้ (บุคคลและอาวุโส): public class Person { [Required(ErrorMessage = "*")] public string Name { get; set; } public bool IsSenior { get; set; } public Senior Senior { get; set; } } public class Senior { [Required(ErrorMessage = "*")]//this should be conditional validation, based on the "IsSenior" value public string …

3
วิธีใช้ knockout.js กับ ASP.NET MVC ViewModels?
เงินรางวัล มันไม่นานมานี้และฉันยังมีคำถามที่ค้างอยู่สองสามข้อ ฉันหวังว่าโดยการเพิ่มรางวัลบางทีคำถามเหล่านี้จะได้รับคำตอบ คุณใช้ html helpers กับ knockout.js อย่างไร เหตุใดเอกสารจึงจำเป็นต้องพร้อมใช้งาน (ดูการแก้ไขครั้งแรกสำหรับข้อมูลเพิ่มเติม) ฉันจะทำสิ่งนี้ได้อย่างไรถ้าฉันใช้การทำแผนที่สิ่งมหัศจรรย์กับโมเดลมุมมองของฉัน ในขณะที่ฉันไม่ได้มีฟังก์ชั่นเนื่องจากการทำแผนที่ function AppViewModel() { // ... leave firstName, lastName, and fullName unchanged here ... this.capitalizeLastName = function() { var currentVal = this.lastName(); // Read the current value this.lastName(currentVal.toUpperCase()); // Write back a modified value }; ฉันต้องการใช้ปลั๊กอินเช่นฉันต้องการสามารถย้อนกลับ observables ราวกับว่าผู้ใช้ยกเลิกการร้องขอฉันต้องการที่จะสามารถกลับไปที่ค่าสุดท้าย …

14
แอตทริบิวต์ Html สำหรับ EditorFor () ใน ASP.NET MVC
ทำไมฉันจึงไม่สามารถผ่านใน html แอตทริบิวต์EditorFor()? เช่น; <%= Html.EditorFor(model => model.Control.PeriodType, new { disabled = "disabled", readonly = "readonly" }) %> ฉันไม่ต้องการใช้ข้อมูลเมตา อัปเดต : วิธีแก้ปัญหาคือการเรียกสิ่งนี้จากมุมมอง: <%=Html.EditorFor( model => model.Control.PeriodEndDate, new {Modifiable=model.Control.PeriodEndDateModifiable})%> และใช้ViewData["Modifiable"]ใน EditorTemplates / String.ascx ที่กำหนดเองของฉันโดยที่ฉันมีตรรกะมุมมองบางอย่างที่กำหนดว่าจะเพิ่มแอตทริบิวต์แบบอ่านอย่างเดียวและ / หรือปิดใช้งานให้กับอินพุตหรือไม่วัตถุที่ไม่ระบุชื่อที่ส่งผ่านเข้าไปEditorFor()เป็นพารามิเตอร์ที่เรียกadditionalViewDataและคุณสมบัติของมันจะถูกส่งไปยังเทมเพลตเอดิเตอร์ในViewDataชุด

6
จะเปลี่ยนเส้นทางไปยังดัชนีจากคอนโทรลเลอร์อื่นได้อย่างไร
ฉันพยายามหาวิธีเปลี่ยนเส้นทางไปยังIndexมุมมองจากตัวควบคุมอื่น public ActionResult Index() { ApplicationController viewModel = new ApplicationController(); return RedirectToAction("Index", viewModel); } นี่คือสิ่งที่ฉันพยายามในตอนนี้ ตอนนี้รหัสที่ฉันได้รับมีActionLinkลิงค์ไปยังหน้าที่ฉันต้องการRedirectด้วย @Html.ActionLink("Bally Applications","../Application")
129 c#  asp.net-mvc 

14
MVC web api: ไม่มีส่วนหัว 'Access-Control-Allow-Origin' อยู่ในทรัพยากรที่ร้องขอ
ฉันลองทุกอย่างที่เขียนในบทความนี้: http://www.asp.net/web-api/overview/security/enabling-cross-origin-requests-in-web-apiแต่ไม่ได้ผล ฉันพยายามดึงข้อมูลจาก webAPI2 (MVC5) เพื่อใช้ในโดเมนอื่นโดยใช้ angularJS ตัวควบคุมของฉันมีลักษณะดังนี้: namespace tapuzWebAPI.Controllers { [EnableCors(origins: "http://local.tapuz.co.il", headers: "*", methods: "*", SupportsCredentials = true)] [RoutePrefix("api/homepage")] public class HomePageController : ApiController { [HttpGet] [Route("GetMainItems")] //[ResponseType(typeof(Product))] public List<usp_MobileSelectTopSecondaryItemsByCategoryResult> GetMainItems() { HomePageDALcs dal = new HomePageDALcs(); //Three product added to display the data //HomePagePromotedItems.Value.Add(new HomePagePromotedItem.Value.FirstOrDefault((p) => p.ID …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.