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

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

5
ใช้ async / รอหลายงาน
ฉันใช้ไคลเอนต์ API ที่ไม่สมบูรณ์อย่างสมบูรณ์นั่นคือการดำเนินการแต่ละอย่างกลับมาTaskหรือTask<T>เช่น: static async Task DoSomething(int siteId, int postId, IBlogClient client) { await client.DeletePost(siteId, postId); // call API client Console.WriteLine("Deleted post {0}.", siteId); } การใช้ตัวดำเนินการ async / await C # 5 วิธีที่ถูกต้อง / มีประสิทธิภาพมากที่สุดในการเริ่มงานหลาย ๆ อย่างและรอให้พวกเขาทั้งหมดดำเนินการให้เสร็จสิ้นคืออะไร: int[] ids = new[] { 1, 2, 3, 4, 5 }; Parallel.ForEach(ids, i …

30
การใช้คำหลัก var ใน C #
ล็อคแล้ว คำถามและคำตอบนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ หลังจากสนทนากับเพื่อนร่วมงานเกี่ยวกับการใช้คำหลัก 'var' ใน C # 3 ฉันสงสัยว่าความคิดเห็นของผู้คนเกี่ยวกับการใช้การอนุมานประเภทที่เหมาะสมผ่านทาง var คืออะไร เช่นฉันค่อนข้างใช้ var อย่างเกียจคร้านในสถานการณ์ที่น่าสงสัยเช่น: - foreach(var item in someList) { // ... } // Type of 'item' not clear. var something = someObject.SomeProperty; // Type of 'something' not clear. var something = someMethod(); // Type of 'something' not …
406 c#  type-inference  var 

30
ฉันจะตัดทอนสตริง. NET ได้อย่างไร
ฉันต้องการจะตัดทอนสตริงที่มีความยาวไม่เกินค่าที่กำหนด ฉันกำลังเขียนลงในตารางฐานข้อมูลและต้องการให้แน่ใจว่าค่าที่ฉันเขียนตรงตามข้อ จำกัด ของประเภทข้อมูลของคอลัมน์ เช่นจะดีถ้าฉันสามารถเขียนต่อไปนี้: string NormalizeLength(string value, int maxLength) { return value.Substring(0, maxLength); } แต่น่าเสียดายที่นี้ทำให้เกิดข้อยกเว้นเพราะโดยทั่วไปเกินขอบเขตของสตริงmaxLength valueแน่นอนฉันสามารถเขียนฟังก์ชั่นดังต่อไปนี้ แต่ฉันหวังว่าจะมีบางอย่างเช่นนี้อยู่แล้ว string NormalizeLength(string value, int maxLength) { return value.Length <= maxLength ? value : value.Substring(0, maxLength); } API ที่เข้าใจยากอยู่ที่ไหนซึ่งทำงานนี้ มีไหม
406 c#  .net  string  truncate 

10
วัตถุ CLR แบบเก่าธรรมดากับวัตถุการถ่ายโอนข้อมูล
Наэтотвопросестьответына Stack Overflow нарусском : Наглядныйпримерразличия DTO, POCO (POJO) และค่าวัตถุ POCO = วัตถุ CLR แบบเก่า (หรือดีกว่า: คลาส) DTO = วัตถุการถ่ายโอนข้อมูล ในโพสต์นี้มีความแตกต่าง แต่บล็อกที่ฉันอ่านส่วนใหญ่อธิบาย POCO ตามวิธีที่ DTO กำหนดไว้: DTO เป็นคอนเทนเนอร์ข้อมูลแบบง่ายที่ใช้สำหรับย้ายข้อมูลระหว่างเลเยอร์ของแอปพลิเคชัน POCO และ DTO เหมือนกันหรือไม่
405 c#  .net  poco  dto 

14
ฉันจะเพิ่มรายการลงในคอลเลกชัน IEnumerable <T> ได้อย่างไร
คำถามของฉันเป็นชื่อด้านบน ตัวอย่างเช่น, IEnumerable&lt;T&gt; items = new T[]{new T("msg")}; items.ToList().Add(new T("msg2")); แต่หลังจากทั้งหมดมันมีเพียง 1 รายการภายใน เรามีวิธีได้items.Add(item)ไหม ชอบ List&lt;T&gt;
405 c#  list  ienumerable 

3
. NET JIT เกิดข้อผิดพลาดหรือไม่
รหัสต่อไปนี้ให้ผลลัพธ์ที่แตกต่างกันเมื่อใช้งานรีลีสภายใน Visual Studio และรันรีลีสภายนอก Visual Studio ฉันใช้ Visual Studio 2008 และกำหนดเป้าหมาย. NET 3.5 ฉันเคยลอง. NET 3.5 SP1 แล้ว เมื่อทำงานนอก Visual Studio JIT ควรเริ่มต้นด้วย (ก) มีบางสิ่งบางอย่างเกิดขึ้นกับ C # ที่ฉันหายไปหรือ (b) JIT นั้นผิดพลาดจริง ๆ ฉันสงสัยว่า JIT สามารถไปผิดได้ แต่ฉันหมดความเป็นไปได้อื่น ๆ ... เอาต์พุตเมื่อทำงานภายใน Visual Studio: 0 0, 0 1, 1 0, 1 1, เอาต์พุตเมื่อเรียกใช้รีลีสนอก …
404 c#  jit 

26
วิธีแก้ปัญหาที่ดีที่สุดสำหรับลูกค้า WCF `using` ปัญหาบล็อกคืออะไร?
ฉันชอบอินสแตนซ์ไคลเอ็นต์บริการ WCF ของฉันภายในusingบล็อกเพราะมันเป็นวิธีมาตรฐานในการใช้ทรัพยากรที่ใช้IDisposable: using (var client = new SomeWCFServiceClient()) { //Do something with the client } แต่ดังที่กล่าวไว้ในบทความ MSDN นี้การตัดไคลเอ็นต์ WCF ในusingบล็อกอาจปิดบังข้อผิดพลาดใด ๆ ที่ทำให้ไคลเอ็นต์อยู่ในสถานะบกพร่อง (เช่นหมดเวลาหรือปัญหาการสื่อสาร) เรื่องสั้นสั้น ๆ เมื่อเรียกใช้ Dispose () เมธอด Close () ของไคลเอ็นต์จะเริ่มทำงาน แต่จะโยนข้อผิดพลาดเนื่องจากอยู่ในสถานะบกพร่อง ข้อยกเว้นดั้งเดิมถูกหลอกลวงโดยข้อยกเว้นที่สอง ไม่ดี. วิธีแก้ปัญหาที่แนะนำในบทความ MSDN คือการหลีกเลี่ยงการใช้usingบล็อกอย่างสมบูรณ์และเพื่อยกตัวอย่างลูกค้าของคุณและใช้สิ่งเหล่านี้แทน: try { ... client.Close(); } catch (CommunicationException e) { ... client.Abort(); …
404 c#  vb.net  wcf  using  wcf-client 

12
ตรวจพบการตั้งค่า ASP.NET ที่ไม่ได้ใช้ในโหมดขั้นตอนการจัดการแบบรวม
ฉันติดตั้ง DotNetOpenAuth SDK-3.4.5.10201.vsix และฉันไม่สามารถทำงานได้ มันทำงานในท้องถิ่น (เมื่อฉันเรียกใช้เป็น localhost) แต่เมื่อฉันพยายามที่จะเผยแพร่มันไม่ทำงาน ข้อความแสดงข้อผิดพลาด IIS ที่ฉันได้รับคือ สรุปข้อผิดพลาด HTTP ข้อผิดพลาด 500.22 - ข้อผิดพลาดเซิร์ฟเวอร์ภายใน ตรวจพบการตั้งค่า ASP.NET ที่ไม่ได้ใช้ในโหมดขั้นตอนที่ได้รับการจัดการรวม และ Module ConfigurationValidationModule Notification BeginRequest Handler StaticFile Error Code 0x80070032 จากนั้นมีคำแนะนำเกี่ยวกับวิธีการแก้ปัญหา: สิ่งที่คุณสามารถลอง: โอนย้ายการกำหนดค่าไปยัง system.webServer/modulesส่วน คุณสามารถทำได้ด้วยตนเองหรือโดยใช้ appcmd จากบรรทัดคำสั่ง - %SystemRoot%\system32\inetsrv\appcmd migrate config "Default Web Site/"ยกตัวอย่างเช่น การใช้AppCmdเพื่อย้ายข้อมูลแอปพลิเคชันของคุณจะช่วยให้แอปพลิเคชันทำงานในโหมดรวมและทำงานต่อในโหมดคลาสสิคและ IIS รุ่นก่อนหน้า หากคุณมั่นใจว่าสามารถเพิกเฉยข้อผิดพลาดนี้ได้คุณสามารถปิดใช้งานได้โดยตั้งค่า system.webServer/validation@validateIntegratedModeConfiguration เป็นเท็จ …
401 c#  asp.net  iis  .net-4.0  iis-7.5 

6
ความแตกต่างระหว่าง Invoke () และ BeginInvoke () คืออะไร
แค่สงสัยว่าความแตกต่างระหว่างBeginInvoke()และInvoke()คืออะไร? ส่วนใหญ่สิ่งที่แต่ละคนจะใช้สำหรับ แก้ไข: อะไรคือความแตกต่างระหว่างการสร้างวัตถุเธรดและการเรียกใช้การเรียกนั้นและเพียงแค่เรียกBeginInvoke()ผู้แทน? หรือพวกเขาเป็นสิ่งเดียวกัน

9
หนึ่ง DbContext ต่อคำขอทางเว็บ…เพราะอะไร
ฉันอ่านบทความจำนวนมากที่อธิบายถึงวิธีการตั้งค่า Entity Framework DbContextเพื่อให้มีการสร้างและใช้เพียงหนึ่งรายการต่อการร้องขอ HTTP ของเว็บโดยใช้เฟรมเวิร์ก DI ต่างๆ ทำไมนี่เป็นความคิดที่ดีตั้งแต่แรก? คุณได้รับประโยชน์อะไรบ้างจากการใช้วิธีการนี้ มีสถานการณ์บางอย่างที่จะเป็นความคิดที่ดีหรือไม่? มีสิ่งใดบ้างที่คุณสามารถทำได้โดยใช้เทคนิคนี้ที่คุณไม่สามารถทำได้เมื่อสร้างอินสแตนซ์DbContextของการเรียกเมธอดที่เก็บ?



6
วิธีรักษาความปลอดภัย ASP.NET Web API [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน3 ปีที่ผ่านมา ฉันต้องการสร้างบริการเว็บสงบโดยใช้ ASP.NET Web API ที่นักพัฒนาบุคคลที่สามจะใช้ในการเข้าถึงข้อมูลแอปพลิเคชันของฉัน ฉันได้อ่านค่อนข้างมากเกี่ยวกับOAuthและดูเหมือนจะเป็นมาตรฐาน แต่การหาตัวอย่างที่ดีพร้อมเอกสารอธิบายว่ามันทำงานอย่างไร (และนั่นใช้งานได้จริง!) ดูเหมือนจะยากอย่างไม่น่าเชื่อ มีตัวอย่างที่สร้างและใช้งานจริงและแสดงวิธีการใช้งานจริงหรือไม่? ฉันได้ดาวน์โหลดตัวอย่างมากมาย: DotNetOAuth - เอกสารเป็นสิ่งที่สิ้นหวังจากมุมมองของมือใหม่ Thinktecture - ไม่สามารถสร้างได้ ฉันยังได้ดูบล็อกที่แนะนำชุดรูปแบบโทเค็นที่เรียบง่าย (เช่นนี้ ) - นี่ดูเหมือนจะเป็นการประดิษฐ์วงล้อขึ้นใหม่ แต่มันมีข้อดีของการเป็นแนวคิดที่ค่อนข้างง่าย ดูเหมือนว่ามีคำถามมากมายเช่นนี้ใน SO แต่ไม่มีคำตอบที่ดี ทุกคนกำลังทำอะไรในพื้นที่นี้


4
วิธีรับโฟลเดอร์ชั่วคราวสำหรับผู้ใช้ปัจจุบัน
ขณะนี้ฉันใช้ฟังก์ชันต่อไปนี้เพื่อรับเส้นทางโฟลเดอร์ชั่วคราวสำหรับผู้ใช้ปัจจุบัน: string tempPath = System.IO.Path.GetTempPath(); ในบางเครื่องมันทำให้ฉันเส้นทางโฟลเดอร์ชั่วคราวของผู้ใช้ปัจจุบันเช่น: C: \ Documents and Settings \ administrator \ Local Settings \ Temp \ ในบางเครื่องมันทำให้ฉันเส้นทางระบบโฟลเดอร์ชั่วคราวเช่น: C: \ Windows \ TEMP เอกสาร MSDN ยังกล่าวว่า API ด้านบนจะส่งคืนโฟลเดอร์ชั่วคราวของระบบปัจจุบัน มี API อื่น ๆ ที่ให้เส้นทางโฟลเดอร์ชั่วคราวของผู้ใช้ปัจจุบันกับฉันเช่นนี้หรือไม่: C: \ Documents and Settings \ administrator \ Local Settings \ Temp \

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