คำถามติดแท็ก c#

C # (ออกเสียงว่า "ดูคม") เป็นภาษาการเขียนโปรแกรมหลายกระบวนทัศน์ในระดับสูงพิมพ์แบบคงที่พัฒนาโดย Microsoft รหัส C # มักกำหนดเป้าหมายกลุ่มเครื่องมือ. NET ของ Microsoft และรันไทม์ซึ่งรวมถึง. NET Framework, .NET Core และ Xamarin เป็นต้น ใช้แท็กนี้สำหรับคำถามเกี่ยวกับโค้ดที่เขียนในข้อกำหนดทางการของ C # หรือ C #

5
รายการ <T> รับประกันคำสั่งแทรกหรือไม่
บอกว่าฉันมี 3 สายในรายการ (เช่น "1", "2", "3") จากนั้นฉันต้องการเรียงลำดับใหม่ให้วาง "2" ในตำแหน่ง 1 (เช่น "2", "1", "3") ฉันใช้รหัสนี้ (การตั้งค่า indexToMoveTo เป็น 1): listInstance.Remove(itemToMove); listInstance.Insert(indexToMoveTo, itemToMove); ดูเหมือนว่าจะใช้งานได้ แต่บางครั้งฉันก็ได้ผลลัพธ์ที่แปลก บางครั้งคำสั่งซื้อไม่ถูกต้องหรือรายการจากรายการจะถูกลบ! ความคิดใด ๆ ไม่List&lt;T&gt;เพื่อรับประกัน? ที่เกี่ยวข้อง: List &lt;T&gt; รับประกันว่าจะมีการส่งคืนสินค้าตามลำดับที่ถูกเพิ่มเข้าไปหรือไม่?
238 c#  .net  collections 

15
จะเพิ่มขนาดไฟล์สูงสุดใน ASP.NET ได้อย่างไร?
ฉันมีรูปแบบที่ยกเว้นการอัปโหลดไฟล์ใน ASP.NET ฉันต้องเพิ่มขนาดการอัปโหลดสูงสุดเป็นค่าเริ่มต้น 4 MB ฉันได้พบในบางสถานที่อ้างอิงด้านล่างรหัสที่MSDN [ConfigurationPropertyAttribute("maxRequestLength", DefaultValue = )] ไม่มีการอ้างอิงจริงอธิบายถึงวิธีการใช้งานและฉันได้ลองหลายสิ่งโดยไม่ประสบความสำเร็จ ฉันต้องการแก้ไขแอททริบิวนี้เฉพาะบางเพจที่ต้องการอัปโหลดไฟล์ นี่เป็นเส้นทางที่ถูกต้องหรือไม่? และฉันจะใช้สิ่งนี้ได้อย่างไร
238 c#  .net  asp.net  file-upload 

5
วิธีการไม่คงที่ต้องมีเป้าหมาย
ฉันมีตัวควบคุมที่ทำงานได้ดีบน Firefox ทั้งในระดับท้องถิ่นและในการผลิตและ IE ในพื้นที่ แต่ไม่ใช่ในการผลิต นี่คือแอ็คชั่นคอนโทรลเลอร์ของฉัน: public ActionResult MNPurchase() { CalculationViewModel calculationViewModel = (CalculationViewModel)TempData["calculationViewModel"]; decimal OP = landTitleUnitOfWork.Sales.Find() .Where(x =&gt; x.Min &gt;= calculationViewModel.SalesPrice) .FirstOrDefault() .OP; decimal MP = landTitleUnitOfWork.Sales.Find() .Where(x =&gt; x.Min &gt;= calculationViewModel.MortgageAmount) .FirstOrDefault() .MP; calculationViewModel.LoanAmount = (OP + 100) - MP; calculationViewModel.LendersTitleInsurance = (calculationViewModel.LoanAmount + 850); return …

30
ไม่สามารถโหลดไฟล์หรือแอสเซมบลีหรือการอ้างอิงอย่างใดอย่างหนึ่ง
ฉันมีปัญหา "ไม่สามารถโหลดไฟล์หรือแอสเซมบลีหรือการอ้างอิงอย่างใดอย่างหนึ่ง" เหล่านี้ ข้อมูลเพิ่มเติม: ไม่สามารถโหลดไฟล์หรือชุดประกอบ 'Microsoft.Practices.Unity, Version = 1.2.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35' หรือการอ้างอิงอย่างใดอย่างหนึ่ง คำจำกัดความรายการของชุดประกอบที่อยู่ไม่ตรงกับการอ้างอิงชุดประกอบ (ข้อยกเว้นจาก HRESULT: 0x80131040) ฉันไม่รู้ว่าอะไรเป็นสาเหตุของปัญหานี้หรือฉันจะแก้ไขข้อบกพร่องเพื่อค้นหาสาเหตุได้อย่างไร ฉันได้ทำการค้นหาในแคตตาล็อกโซลูชันไฟล์. csproj และทุกที่ที่ฉันมี Unity ฉันมี: การอ้างอิงรวม = "Microsoft.Practices.Unity, รุ่น = 2.0.414.0, วัฒนธรรม = เป็นกลาง, PublicKeyToken = 31bf3856ad364e35, ตัวประมวลผลสถาปัตยกรรม = MSIL" ไม่พบการอ้างอิงใด ๆ ที่เทียบกับ 1.2.0.0 ในโครงการใด ๆ ของฉัน ความคิดใดที่ฉันควรแก้ไขเกี่ยวกับเรื่องนี้? ฉันขอขอบคุณเคล็ดลับเกี่ยวกับวิธีการแก้ปัญหาเช่นนี้โดยทั่วไป

13
วิธีสร้างสตริง JSON ใน C #
ฉันเพิ่งใช้ XmlWriter เพื่อสร้าง XML เพื่อส่งกลับในการตอบสนอง HTTP คุณจะสร้างสตริง JSON อย่างไร ฉันคิดว่าคุณเพียงแค่ใช้ stringbuilder เพื่อสร้างสตริง JSON และพวกเขาจัดรูปแบบการตอบสนองของคุณเป็น JSON?
238 c#  asp.net  json 

12
โค้ดในคำสั่งในที่สุดจะเริ่มทำงานหรือไม่หากฉันส่งคืนค่าในบล็อกลองใช้
ฉันกำลังตรวจสอบโค้ดสำหรับเพื่อนและบอกว่าเขากำลังใช้คำสั่งส่งคืนภายในบล็อกการทดลองใช้ในที่สุด รหัสในส่วนสุดท้ายยังคงทำงานอยู่แม้ว่าบล็อกทดลองที่เหลือจะไม่ใช้งานหรือไม่ ตัวอย่าง: public bool someMethod() { try { return true; throw new Exception("test"); // doesn't seem to get executed } finally { //code in question } }

21
แป้นพิมพ์ลัดไม่ทำงานใน Visual Studio ที่ติดตั้ง Resharper
ฉันติดตั้งVisual Studio 2012 + Resharper 7.1.1000.900 + StyleCop 4.7.44 แล้ว ปัญหาคือไม่มีทางลัดที่ใช้งานได้ตั้งแต่ติดตั้ง Resharper ตัวอย่างเช่น: ฉันสามารถเปลี่ยนชื่อผ่าน 'Refactor&gt; Rename' แต่ shorcut Ctrl+ Rไม่ทำอะไรเลย ฉันได้ตั้งค่ารูปแบบแป้นพิมพ์ Resharperเป็น 'Visual Studio' ใน 'Resharper&gt; ตัวเลือก&gt; สภาพแวดล้อม&gt; แป้นพิมพ์และเมนู' มีวิธีใดบ้างในการเปิดใช้งานทางลัด ขอบคุณ


15
เหตุการณ์ C # และความปลอดภัยของเธรด
UPDATE ตั้งแต่ C # 6 คำตอบสำหรับคำถามนี้คือ: SomeEvent?.Invoke(this, e); ฉันมักจะได้ยิน / อ่านคำแนะนำต่อไปนี้: ทำสำเนาของเหตุการณ์เสมอก่อนที่คุณจะตรวจสอบnullและดำเนินการ การทำเช่นนี้จะช่วยขจัดปัญหาที่อาจเกิดขึ้นกับเธรดที่เหตุการณ์เกิดขึ้นnullที่ตำแหน่งระหว่างที่คุณตรวจสอบว่ามีค่าว่างหรือไม่ // Copy the event delegate before checking/calling EventHandler copy = TheEvent; if (copy != null) copy(this, EventArgs.Empty); // Call any handlers on the copied list อัปเดต : ฉันคิดว่าจากการอ่านเกี่ยวกับการปรับให้เหมาะสมซึ่งสิ่งนี้อาจต้องการให้สมาชิกเหตุการณ์ระเหยได้ แต่ Jon Skeet ระบุไว้ในคำตอบของเขาว่า CLR ไม่ได้เพิ่มประสิทธิภาพการคัดลอก แต่ในขณะเดียวกันเพื่อให้ปัญหานี้เกิดขึ้นอีกเธรดอื่นต้องทำดังนี้: // Better …

3
Page vs Window ใน WPF?
อะไรคือความแตกต่างระหว่างหน้าและหน้าต่างใน WPF เมื่อคุณเพิ่มไฟล์ใหม่ใน Solution Explorer?
237 c#  wpf 

10
ASP.NET MVC 5 - ตัวตน วิธีรับ ApplicationUser ปัจจุบัน
ฉันมีนิติบุคคลบทความในโครงการของฉันที่มีคุณสมบัติชื่อApplicationUser Authorฉันจะรับวัตถุเต็มรูปแบบของการเข้าสู่ระบบในปัจจุบันได้ApplicationUserอย่างไร? ขณะที่การสร้างบทความใหม่ผมต้องตั้งค่าAuthorคุณสมบัติในการปัจจุบันArticleApplicationUser ในกลไกการเป็นสมาชิกแบบเก่ามันเป็นเรื่องง่าย แต่ในวิธีการแบบผู้ถือหุ้นแบบใหม่ฉันไม่รู้ว่าจะทำอย่างไร ฉันพยายามทำแบบนี้: เพิ่มการใช้คำสั่งสำหรับส่วนขยายข้อมูลประจำตัว: using Microsoft.AspNet.Identity; จากนั้นฉันพยายามรับผู้ใช้ปัจจุบัน: ApplicationUser currentUser = db.Users.FirstOrDefault(x =&gt; x.Id == User.Identity.GetUserId()); แต่ฉันได้รับข้อยกเว้นต่อไปนี้: LINQ ไปยังเอนทิตีไม่รู้จักเมธอด 'System.String GetUserId (System.Security.Principal.IIdentity)' และวิธีนี้ไม่สามารถแปลเป็นนิพจน์ร้านค้าได้ แหล่งที่มา = EntityFramework

6
ไวยากรณ์ที่สั้นลงสำหรับการส่งจากรายการ <X> ไปยังรายการ <Y>?
ฉันรู้ว่าเป็นไปได้ที่จะส่งรายการจากประเภทหนึ่งไปอีกประเภทหนึ่ง (เนื่องจากวัตถุของคุณมีวิธีดำเนินการแบบคงที่อย่างชัดเจนในที่สาธารณะเพื่อทำการแคสต์) ทีละรายการดังต่อไปนี้: List&lt;Y&gt; ListOfY = new List&lt;Y&gt;(); foreach(X x in ListOfX) ListOfY.Add((Y)x); แต่เป็นไปไม่ได้ไหมที่จะส่งรายชื่อทั้งหมดในครั้งเดียว? ตัวอย่างเช่น, ListOfY = (List&lt;Y&gt;)ListOfX;
237 c#  list  casting  ienumerable 

10
รองานหลายงานที่มีผลลัพธ์แตกต่างกัน
ฉันมี 3 งาน: private async Task&lt;Cat&gt; FeedCat() {} private async Task&lt;House&gt; SellHouse() {} private async Task&lt;Tesla&gt; BuyCar() {} พวกเขาทุกคนจำเป็นต้องเรียกใช้ก่อนที่รหัสของฉันจะสามารถดำเนินต่อไปและฉันต้องการผลลัพธ์จากแต่ละรายการเช่นกัน ไม่มีผลลัพธ์ใดที่เหมือนกันซึ่งกันและกัน ฉันจะโทรและรอให้งานทั้ง 3 เสร็จสมบูรณ์แล้วจึงได้ผลลัพธ์


4
ความแตกต่างระหว่าง ObservableCollection และ BindingList
ฉันต้องการทราบความแตกต่างระหว่างObservableCollectionและBindingListเนื่องจากฉันใช้ทั้งคู่เพื่อแจ้งให้ทราบถึงการเปลี่ยนแปลงเพิ่ม / ลบใด ๆ ในแหล่งที่มา ทำไมฉันต้องเลือกข้อใดข้อหนึ่งต่อไปนี้ ObservableCollection&lt;Employee&gt; lstEmp = new ObservableCollection&lt;Employee&gt;(); หรือ BindingList&lt;Employee&gt; lstEmp = new BindingList&lt;Employee&gt;();

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