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

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

8
ความแตกต่างระหว่างงานและด้ายคืออะไร?
ใน C # 4.0 เรามีTaskในSystem.Threading.Tasks namespace ความแตกต่างที่แท้จริงระหว่างThreadและTaskคืออะไร ฉันทำโปรแกรมตัวอย่าง (ความช่วยเหลือจาก MSDN) เพื่อการเรียนรู้ด้วยตัวเอง Parallel.Invoke Parallel.For Parallel.ForEach แต่มีข้อสงสัยมากมายเนื่องจากแนวคิดไม่ชัดเจน ฉันเคยค้นหาใน Stackoverflow สำหรับคำถามประเภทเดียวกัน แต่อาจอยู่กับชื่อคำถามนี้ฉันไม่สามารถได้รับเหมือนกัน หากใครรู้เกี่ยวกับคำถามประเภทเดียวกันที่โพสต์ไว้ที่นี่ก่อนหน้านี้โปรดให้ข้อมูลอ้างอิงจากลิงก์

30
gotcha ที่เลวร้ายที่สุดใน C # หรือ. NET คืออะไร? [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ฉันเพิ่งทำงานกับDateTimeวัตถุและเขียนสิ่งนี้: DateTime dt = DateTime.Now; dt.AddDays(1); return dt; // still today's date! WTF? เอกสาร Intellisense สำหรับAddDays()บอกว่าจะเพิ่มวันในวันที่ซึ่งไม่ได้ - จริง ๆ แล้วมันคืนวันที่มีวันที่เพิ่มเข้าไปดังนั้นคุณต้องเขียนมันเช่น: DateTime dt = DateTime.Now; dt = dt.AddDays(1); return dt; // tomorrow's date อันนี้กัดฉันหลายครั้งก่อนดังนั้นฉันคิดว่ามันจะมีประโยชน์ในการแคตตาล็อก C # gotchas ที่เลวร้ายที่สุด
377 c#  .net 

8
รูปแบบที่ดีสำหรับการใช้ Global Mutex ใน C # คืออะไร
คลาส Mutex เข้าใจผิดมากและ Mutex ทั่วโลกยิ่งกว่านั้นมาก รูปแบบที่ดีและปลอดภัยที่จะใช้เมื่อสร้าง Global mutexes คืออะไร หนึ่งที่จะทำงาน เครื่องของฉันอยู่ในระบบ รับประกันว่าจะปล่อย mutex อย่างถูกต้อง เป็นทางเลือกไม่แขวนตลอดไปหากไม่ได้รับ mutex ข้อตกลงกับกรณีที่กระบวนการอื่นละทิ้ง mutex
377 c#  concurrency  mutex 

18
ผ่านรายการเดียวเป็น IEnumerable <T>
มีวิธีการทั่วไปในการส่งรายการประเภทเดียวTไปยังวิธีที่คาดว่า IEnumerable&lt;T&gt;พารามิเตอร์หรือไม่ ภาษาคือ C #, กรอบงานเวอร์ชัน 2.0 ขณะนี้ฉันกำลังใช้วิธีผู้ช่วย (เป็น. Net 2.0 ดังนั้นฉันจึงมีวิธีการคัดเลือก / ฉายผู้ช่วยที่คล้ายกับ LINQ ทั้งหมด) แต่วิธีนี้ดูเหมือนโง่: public static class IEnumerableExt { // usage: IEnumerableExt.FromSingleItem(someObject); public static IEnumerable&lt;T&gt; FromSingleItem&lt;T&gt;(T item) { yield return item; } } วิธีการอื่น ๆ ของหลักสูตรจะมีการสร้างและเติมList&lt;T&gt;หรือและผ่านมันแทนArrayIEnumerable&lt;T&gt; [แก้ไข]เป็นวิธีการขยายอาจตั้งชื่อ: public static class IEnumerableExt { // usage: someObject.SingleItemAsEnumerable(); public static …
377 c#  .net  generics  ienumerable 


29
แยกรายการเป็นรายการย่อยด้วย LINQ
มีวิธีใดบ้างที่ฉันสามารถแยก a List&lt;SomeObject&gt;ออกเป็นหลาย ๆ รายการSomeObjectโดยใช้ดัชนีรายการเป็นตัวคั่นของแต่ละการแบ่ง ให้ฉันเป็นตัวอย่าง: ฉันมีList&lt;SomeObject&gt;และฉันต้องการList&lt;List&lt;SomeObject&gt;&gt;หรือList&lt;SomeObject&gt;[]เพื่อให้แต่ละรายการผลลัพธ์เหล่านี้จะมีกลุ่ม 3 รายการของรายการต้นฉบับ (เรียงตามลำดับ) เช่น.: รายการเดิม: [a, g, e, w, p, s, q, f, x, y, i, m, c] รายการผลลัพธ์: [a, g, e], [w, p, s], [q, f, x], [y, i, m], [c] ฉันต้องการขนาดรายการผลลัพธ์เพื่อเป็นพารามิเตอร์ของฟังก์ชันนี้
377 c#  linq  data-structures 

7
Entity Framework - รวมคุณสมบัติหลายระดับ
กระบวนการรวม () วิธีการทำงานค่อนข้างดีสำหรับรายการบนวัตถุ แต่ถ้าฉันต้องไปสองระดับลึก ตัวอย่างเช่นวิธีการด้านล่างจะส่งคืน ApplicationServers พร้อมคุณสมบัติที่รวมไว้ที่นี่ อย่างไรก็ตาม ApplicationsWithOverrideGroup เป็นคอนเทนเนอร์อื่นที่เก็บวัตถุที่ซับซ้อนอื่น ๆ ฉันสามารถรวม () กับทรัพย์สินนั้นได้หรือไม่ หรือฉันจะทำให้คุณสมบัตินั้นโหลดเต็มได้อย่างไร ตามที่เป็นอยู่ตอนนี้วิธีการนี้: public IEnumerable&lt;ApplicationServer&gt; GetAll() { return this.Database.ApplicationServers .Include(x =&gt; x.ApplicationsWithOverrideGroup) .Include(x =&gt; x.ApplicationWithGroupToForceInstallList) .Include(x =&gt; x.CustomVariableGroups) .ToList(); } จะเติมข้อมูลเฉพาะคุณสมบัติที่เปิดใช้งาน (ด้านล่าง) และไม่ใช่คุณสมบัติของแอปพลิเคชันหรือ CustomVariableGroup (ด้านล่าง) ฉันจะทำให้สิ่งนี้เกิดขึ้นได้อย่างไร public class ApplicationWithOverrideVariableGroup : EntityBase { public bool Enabled { get; …

30
Profilers .NET ที่ดีคืออะไร
ล็อคแล้ว คำถามและคำตอบนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ คุณใช้โปรไฟล์อะไรเมื่อทำงานกับโปรแกรม. net และแนะนำโดยเฉพาะอย่างยิ่ง
374 c#  .net  profiling  profiler 

12
ใน C # เหตุใด String จึงเป็นประเภทการอ้างอิงที่ทำงานเหมือนประเภทค่า
String เป็นประเภทการอ้างอิงแม้ว่าจะมีลักษณะส่วนใหญ่ของประเภทค่าเช่นการไม่เปลี่ยนรูปและมี == มากไปเพื่อเปรียบเทียบข้อความแทนที่จะทำให้แน่ใจว่าพวกเขาอ้างอิงวัตถุเดียวกัน เหตุใดสตริงจึงไม่เป็นเพียงประเภทค่า

22
“ คอลเลกชันตัวควบคุมไม่สามารถแก้ไขได้เนื่องจากตัวควบคุมประกอบด้วยบล็อครหัส”
ฉันพยายามสร้างตัวควบคุมผู้ใช้อย่างง่ายที่เป็นตัวเลื่อน เมื่อฉันเพิ่ม AjaxToolkit SliderExtender ในการควบคุมผู้ใช้ฉันได้รับข้อผิดพลาด (* &amp; $ # () @ # นี้: Server Error in '/' Application. The Controls collection cannot be modified because the control contains code blocks (i.e. `&lt;% ... %&gt;`). Description: An unhandled exception occurred during the execution of the current web request. Please review the …


14
วิธีการสามารถทำให้คงที่ แต่ควร?
Resharper ชอบที่จะชี้ให้เห็นถึงฟังก์ชั่นหลาย ๆ ต่อหน้า asp.net ที่สามารถทำให้คงที่ มันช่วยฉันได้ไหมถ้าฉันทำให้มันคงที่? ฉันควรทำให้พวกเขาคงที่และย้ายไปยังคลาสยูทิลิตี้?

18
วิธีลบตัวจัดการเหตุการณ์ทั้งหมดออกจากเหตุการณ์
ในการสร้างตัวจัดการเหตุการณ์ใหม่บนตัวควบคุมคุณสามารถทำได้ c.Click += new EventHandler(mainFormButton_Click); หรือสิ่งนี้ c.Click += mainFormButton_Click; และเมื่อต้องการลบตัวจัดการเหตุการณ์คุณสามารถทำได้ c.Click -= mainFormButton_Click; แต่คุณจะลบตัวจัดการเหตุการณ์ทั้งหมดออกจากเหตุการณ์ได้อย่างไร
366 c#  .net  winforms  events 

14
สลับคำสั่งผิดพลาดใน C # หรือไม่
การเปลี่ยนคำสั่งผิดพลาดเป็นหนึ่งในเหตุผลสำคัญที่ทำให้ฉันรักswitchกับการif/else ifสร้าง ตัวอย่างอยู่ในลำดับที่นี่: static string NumberToWords(int number) { string[] numbers = new string[] { "", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine" }; string[] tens = new string[] { "", "", "twenty", "thirty", "forty", "fifty", "sixty", "seventy", "eighty", "ninety" }; string[] teens = new string[] { "ten", "eleven", …

26
จะรับที่อยู่ IP ของเซิร์ฟเวอร์ที่แอปพลิเคชัน C # ของฉันทำงานอยู่ได้อย่างไร
ฉันใช้เซิร์ฟเวอร์และฉันต้องการแสดงที่อยู่ IP ของตัวเอง ไวยากรณ์สำหรับการรับที่อยู่ IP ของคอมพิวเตอร์ (ถ้าเป็นไปได้, ภายนอก) คืออะไร? มีคนเขียนรหัสต่อไปนี้ IPHostEntry host; string localIP = "?"; host = Dns.GetHostEntry(Dns.GetHostName()); foreach (IPAddress ip in host.AddressList) { if (ip.AddressFamily.ToString() == "InterNetwork") { localIP = ip.ToString(); } } return localIP; อย่างไรก็ตามโดยทั่วไปฉันไม่ไว้ใจผู้เขียนและฉันไม่เข้าใจรหัสนี้ มีวิธีที่ดีกว่าในการทำเช่นนั้น?
365 c#  ip-address 

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