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

ASP.NET MVC 3 เป็นส่วนขยายหลักรุ่นที่สามของ Model-View-Controller สำหรับการพัฒนาเว็บแอปพลิเคชั่นใน. NET Framework

19
ไม่มีชื่อ 'model' ในบริบทปัจจุบันใน MVC3
ฉันเพิ่มเพจ cshtml ในโปรเจ็กต์ เมื่อฉันพยายามเพิ่มคำประกาศต่อไปนี้ฉันได้รับข้อผิดพลาด: "ชื่อ 'รุ่น' ไม่มีอยู่ในบริบทปัจจุบัน" @model xyz.abc.SomeClass ฉันตรวจสอบการอ้างอิงแล้วทั้งหมดอยู่ในสถานที่ ฉันเพิ่ม web.config ในโฟลเดอร์มุมมอง แต่ไม่สามารถแก้ไขได้ มีอะไรที่ฉันขาดหายไป?

7
วิธีสร้างกล่องข้อความแบบอ่านอย่างเดียวใน ASP.NET MVC3 Razor
ฉันจะสร้างกล่องข้อความแบบอ่านอย่างเดียวใน ASP.NET MVC3 ด้วย Razor view engine ได้อย่างไร มีวิธี HTMLHelper ที่สามารถทำได้หรือไม่? สิ่งต่อไปนี้? @Html.ReadOnlyTextBoxFor(m => m.userCode)

15
วิธีการแสดง DateTime ในรูปแบบเฉพาะใน ASP.NET MVC 3
หากฉันมีคุณสมบัติประเภทหนึ่งในคลาสโมเดลDateTimeฉันจะแสดงผลในรูปแบบเฉพาะได้อย่างไรตัวอย่างเช่นในรูปแบบที่ToLongDateString()ส่งคืน ฉันได้ลองสิ่งนี้ ... @Html.DisplayFor(modelItem => item.MyDateTime.ToLongDateString()) ... ซึ่งแสดงข้อยกเว้นเนื่องจากนิพจน์ต้องชี้ไปที่คุณสมบัติหรือฟิลด์ และนี่... @{var val = item.MyDateTime.ToLongDateString(); Html.DisplayFor(modelItem => val); } ... ซึ่งไม่ได้ทำให้เกิดข้อยกเว้น แต่เอาต์พุตที่แสดงผลนั้นว่างเปล่า (แม้ว่าจะvalมีค่าที่คาดหวังอย่างที่ฉันเห็นในดีบักเกอร์) ขอบคุณสำหรับเคล็ดลับล่วงหน้า! แก้ไข ToLongDateStringเป็นเพียงตัวอย่างเท่านั้น สิ่งที่ฉันต้องการใช้แทนToLongDateStringคือวิธีการขยายที่กำหนดเองของDateTimeและDateTime?: public static string FormatDateTimeHideMidNight(this DateTime dateTime) { if (dateTime.TimeOfDay == TimeSpan.Zero) return dateTime.ToString("d"); else return dateTime.ToString("g"); } public static string FormatDateTimeHideMidNight(this DateTime? dateTime) { if …

6
การจัดการข้อผิดพลาด ASP.NET MVC Ajax
ฉันจะจัดการข้อยกเว้นที่เกิดขึ้นในคอนโทรลเลอร์ได้อย่างไรเมื่อ jquery ajax เรียกการดำเนินการ ตัวอย่างเช่นฉันต้องการโค้ดจาวาสคริปต์ส่วนกลางที่ดำเนินการกับข้อยกเว้นของเซิร์ฟเวอร์ใด ๆ ในระหว่างการเรียก ajax ซึ่งจะแสดงข้อความยกเว้นหากอยู่ในโหมดดีบักหรือเป็นเพียงข้อความแสดงข้อผิดพลาดปกติ ในฝั่งไคลเอ็นต์ฉันจะเรียกใช้ฟังก์ชันเกี่ยวกับข้อผิดพลาดของ ajax ในฝั่งเซิร์ฟเวอร์ฉันต้องเขียนตัวกรองการดำเนินการที่กำหนดเองหรือไม่


5
การรับ“ คำขอที่อาจเป็นอันตรายตรวจพบค่าเส้นทางจากไคลเอนต์ (&)”
ฉันมีปัญหาเกี่ยวกับรหัสเดิมที่ต้องการให้ฉันสนับสนุน URL แบบสุ่มราวกับว่าเป็นคำขอสำหรับโฮมเพจ บางส่วนของ URL ที่มีตัวละครในพวกเขาที่สร้างข้อผิดพลาด"อาจเป็นค่า Request.Path อันตรายที่ตรวจพบจากลูกค้า (&)" ไซต์นี้เขียนด้วย ASP.Net MVC 3 (ใน C #) และทำงานบน IIS 7.5 นี่คือตัวอย่าง URL ... http://mywebsite.com/Test123/This_&_That นี่คือวิธีที่ฉันตั้งค่าเส้นทางรับทั้งหมด (ฉันมีเส้นทางอื่นที่จะจับหน้าเฉพาะ) ... routes.MapRoute( "Default", // Route name "{garb1}/{garb2}", // URL with parameters new { controller = "Website", action = "Home", garb1 = UrlParameter.Optional, garb2 = UrlParameter.Optional …

3
ไม่สามารถส่งวิธีการขยายแบบไดนามิกได้
ฉันต้องการมี DropDownListFor ใน MVC @foreach (var item in Model) { @Html.DropDownListFor(modelItem => item.TitleIds, new SelectList(ViewBag.TitleNames as System.Collections.IEnumerable, "TitleId", "Title.TitleText"), "No: " + ViewBag.MagNo, new { id = "TitleIds" }) } ในตัวควบคุม public ActionResult ArticleList(int id) { ArticleWriter_ViewModel viewModel = new ArticleWriter_ViewModel(); Func<IQueryable<NumberTitle>, IOrderedQueryable<NumberTitle>> orderByFunc = null; Expression<Func<NumberTitle, bool>> filterExpr = …

4
วิธีดึงค่าฟอร์มจาก HTTPPOST พจนานุกรมหรือ?
ฉันมีตัวควบคุม MVC ที่มีวิธีการดำเนินการนี้: [HttpPost] public ActionResult SubmitAction() { // Get Post Params Here ... return something ... } แบบฟอร์มเป็นรูปแบบที่ไม่สำคัญพร้อมด้วยกล่องข้อความธรรมดา คำถาม ฉันจะเข้าถึงค่าพารามิเตอร์ได้อย่างไร ฉันไม่ได้โพสต์จากมุมมองโพสต์นี้มาจากภายนอก ฉันสมมติว่ามีคอลเลกชันของคู่คีย์ / ค่าที่ฉันสามารถเข้าถึงได้ ฉันลองแล้วRequest.Params.Get("simpleTextBox");แต่กลับแสดงข้อผิดพลาด "ขออภัยเกิดข้อผิดพลาดขณะดำเนินการตามคำขอของคุณ"

4
MVC3 DropDownListFor - ตัวอย่างง่ายๆ?
ฉันมีปัญหากับDropDownListForแอป MVC3 ฉันสามารถใช้ StackOverflow เพื่อหาวิธีทำให้สิ่งเหล่านี้ปรากฏบน View ได้ แต่ตอนนี้ฉันไม่รู้วิธีจับค่าในคุณสมบัติที่สอดคล้องกันบน View Model เมื่อส่งแล้ว เพื่อให้สิ่งนี้ใช้งานได้ฉันต้องสร้างคลาสภายในที่มี ID และคุณสมบัติค่าจากนั้นฉันต้องใช้IEnumerable<Contrib>เพื่อให้เป็นไปตามDropDownListForข้อกำหนดของพารามิเตอร์ อย่างไรก็ตาม MVC FW ควรจะแมปค่าที่เลือกไว้ในเมนูแบบเลื่อนลงนี้กลับไปยังคุณสมบัติสตริงแบบง่ายในโมเดลมุมมองของฉันได้อย่างไร public class MyViewModelClass { public class Contrib { public int ContribId { get; set; } public string Value { get; set; } } public IEnumerable<Contrib> ContribTypeOptions = new List<Contrib> { new Contrib …

4
ASP.NET MVC: Controller ถูกสร้างขึ้นสำหรับทุกคำขอหรือไม่
คำถามง่ายมาก: ตัวควบคุมใน ASP.NET ถูกสร้างขึ้นสำหรับทุกคำขอ HTTP หรือไม่หรือสร้างขึ้นเมื่อเริ่มต้นแอปพลิเคชันและใช้ซ้ำตลอดคำขอ ตัวควบคุมจะถูกสร้างขึ้นสำหรับคำขอ HTTP เฉพาะหรือไม่ หากสมมติฐานก่อนหน้าของฉันถูกต้องฉันจะขึ้นอยู่กับมันได้หรือไม่? ฉันต้องการสร้างบริบทฐานข้อมูล (Entity Framework) ที่จะใช้งานได้สำหรับคำขอเดียวเท่านั้น ถ้าฉันสร้างเป็นคุณสมบัติที่เริ่มต้นในคอนสตรัคเตอร์ของคอนโทรลเลอร์จะมีการสร้างอินสแตนซ์ของบริบทใหม่สำหรับทุกคำขอหรือไม่

7
Int หรือ Number DataType สำหรับแอตทริบิวต์การตรวจสอบความถูกต้อง DataAnnotation
ในโครงการ MVC3 ของฉันฉันจัดเก็บการทำนายคะแนนสำหรับเกมฟุตบอล / ฟุตบอล / ฮ็อกกี้ / ... ดังนั้นคุณสมบัติอย่างหนึ่งของคลาสการทำนายของฉันจึงมีลักษณะดังนี้: [Range(0, 15, ErrorMessage = "Can only be between 0 .. 15")] [StringLength(2, ErrorMessage = "Max 2 digits")] [Remote("PredictionOK", "Predict", ErrorMessage = "Prediction can only be a number in range 0 .. 15")] public int? HomeTeamPrediction { get; set; } ตอนนี้ฉันต้องการเปลี่ยนข้อความแสดงข้อผิดพลาดสำหรับชนิดข้อมูลด้วยintในกรณีของฉัน …

6
ASP.NET MVC: การตรวจสอบแบบกำหนดเองโดย DataAnnotation
ฉันมีโมเดลที่มีคุณสมบัติ 4 อย่างซึ่งเป็นสตริงประเภท ฉันรู้ว่าคุณสามารถตรวจสอบความยาวของคุณสมบัติเดียวได้โดยใช้คำอธิบายประกอบ StringLength อย่างไรก็ตามฉันต้องการตรวจสอบความยาวของคุณสมบัติทั้ง 4 ที่รวมกัน MVC ทำอย่างไรกับคำอธิบายประกอบข้อมูล ฉันถามสิ่งนี้เพราะฉันเพิ่งเริ่มใช้ MVC และต้องการทำวิธีที่ถูกต้องก่อนที่จะแก้ไขปัญหาของตัวเอง

3
HtmlString กับ MvcHtmlString
HtmlString เทียบกับ MvcHtmlString อะไรคือความแตกต่างระหว่างสองคนนั้นหรือเมื่อใดควรเลือกอย่างใดอย่างหนึ่งมากกว่ากัน? แก้ไข: สิ่งหนึ่งที่ชอบMvcHtmlStringมากกว่าHtmlStringคือวิธีการขยายIsNullOrEmptyของMvcHtmlString.

4
ตัวตรวจสอบค่าต่ำสุด / สูงสุดใน asp.net mvc
การตรวจสอบความถูกต้องโดยใช้แอตทริบิวต์ใน asp.net mvc นั้นดีมาก ฉันใช้ตัว[Range(min, max)]ตรวจสอบความถูกต้องในการตรวจสอบค่าเช่น: [Range(1, 10)] public int SomeNumber { get; set; } อย่างไรก็ตาม - ตอนนี้ฉันต้องตรวจสอบเงื่อนไขขั้นต่ำและสูงสุดแยกกัน ฉันคาดว่าจะพบคุณลักษณะดังนี้: [MinValue(1, "Value must be at least 1")] [MaxValue(10, "Value can't be more than 10")] public int SomeNumber { get; set; } มีคุณลักษณะที่กำหนดไว้ล่วงหน้าสำหรับการเขียนสิ่งนี้หรือไม่? หรือฉันจะบรรลุสิ่งนี้ได้อย่างไร?

8
MVC Razor แบบไดนามิก 'object' ไม่มีคำจำกัดความสำหรับ 'PropertyName'
ใช้ MVC 3 กับ Razor view engine ฉันมีมุมมองนี้: @model dynamic @{ var products = (List<ListItemBaseModel>)Model.Products; var threshold = (int)(Model.Threshold ?? 1); var id = Guid.NewGuid().ToString(); } เรียกจากมุมมองอื่นโดยใช้รหัสนี้: @Html.Partial("PartialViewName", new { Products = Model, Threshold = 5 }) ในมุมมองทั้งสองเมื่อฉันดีบักและดูโมเดลดูเหมือนว่าจะมีวัตถุที่ถูกต้อง เมื่อฉันรันโค้ดฉันได้รับข้อผิดพลาดในบรรทัด "var products =" ว่า: 'object' ไม่มีคำจำกัดความสำหรับ 'Products' ใครช่วยอธิบายให้ฉันฟังได้ไหมว่าทำไมฉันถึงได้รับข้อผิดพลาดนั้น อีกครั้งเมื่อฉันดู Model object …

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