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

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

4
ผูก WPF ComboBox ไปยังรายการที่กำหนดเอง
ฉันมี ComboBox ที่ดูเหมือนจะไม่อัพเดทค่า SelectedItem / SelectedValue ComboBox ItemsSource ถูกผูกไว้กับคุณสมบัติบนคลาส ViewModel ที่แสดงรายการสมุดโทรศัพท์ RAS จำนวนมากเป็น CollectionView จากนั้นฉันได้ผูก (ในเวลาที่แยกต่างหาก) ทั้งคุณสมบัติSelectedItemหรือSelectedValueไปยังคุณสมบัติอื่นของ ViewModel ฉันได้เพิ่ม MessageBox ลงในคำสั่งบันทึกเพื่อตรวจแก้จุดบกพร่องค่าที่กำหนดโดย databinding แต่ไม่มีการตั้งค่าSelectedItem/ การSelectedValueผูก คลาส ViewModel มีลักษณะดังนี้: public ConnectionViewModel { private readonly CollectionView _phonebookEntries; private string _phonebookeEntry; public CollectionView PhonebookEntries { get { return _phonebookEntries; } } public string PhonebookEntry …
183 c#  wpf  data-binding  mvvm  combobox 


8
มีการเพิ่มตัวจัดการเหตุการณ์แล้วหรือยัง?
มีวิธีบอกหรือไม่ว่ามีการเพิ่มตัวจัดการเหตุการณ์ไปยังวัตถุหรือไม่? ฉันจัดลำดับรายการวัตถุเข้า / ออกจากสถานะเซสชันเพื่อให้เราสามารถใช้สถานะเซสชันที่ใช้ SQL ได้ ... เมื่อวัตถุในรายการเปลี่ยนคุณสมบัติต้องมีการตั้งค่าสถานะซึ่งตัวจัดการเหตุการณ์ดูแลอย่างถูกต้องก่อน . อย่างไรก็ตามเมื่อวัตถุถูก deserialized มันไม่ได้รับตัวจัดการเหตุการณ์ ด้วยความรำคาญเล็กน้อยฉันเพิ่งเพิ่มตัวจัดการเหตุการณ์ในคุณสมบัติรับที่เข้าถึงวัตถุ มันได้รับการเรียกแล้วตอนนี้ซึ่งยอดเยี่ยมยกเว้นว่ามันจะถูกเรียกเช่น 5 ครั้งดังนั้นฉันคิดว่าตัวจัดการจะเพิ่มเข้ามาทุกครั้งที่เข้าถึงวัตถุ มันปลอดภัยพอที่จะเพิกเฉย แต่ฉันต้องการทำให้มันสะอาดกว่าเดิมโดยการตรวจสอบเพื่อดูว่ามีการเพิ่มตัวจัดการแล้วหรือไม่ดังนั้นฉันจะทำเพียงครั้งเดียว เป็นไปได้ไหม แก้ไข: ฉันไม่จำเป็นต้องมีการควบคุมอย่างเต็มที่ว่าจะเพิ่มตัวจัดการเหตุการณ์ใดดังนั้นเพียงแค่ตรวจสอบว่า null ไม่ดีพอ
183 c#  .net  asp.net 

4
ตัวจัดการเหตุการณ์หยุดการรวบรวมขยะหรือไม่?
หากฉันมีรหัสต่อไปนี้: MyClass pClass = new MyClass(); pClass.MyEvent += MyFunction; pClass = null; pClass จะถูกรวบรวมขยะหรือไม่ หรือมันจะแขวนรอบยังคงยิงเหตุการณ์เมื่อใดก็ตามที่พวกเขาเกิดขึ้น? ฉันจะต้องทำสิ่งต่อไปนี้เพื่ออนุญาตการเก็บขยะหรือไม่ MyClass pClass = new MyClass(); pClass.MyEvent += MyFunction; pClass.MyEvent -= MyFunction; pClass = null;

9
การทำรังกำลังรออยู่ใน Parallel.ForEach
ในแอพพลิเคชั่นรถไฟใต้ดินฉันต้องทำการเรียก WCF เป็นจำนวนมาก มีการโทรจำนวนมากที่ต้องทำการโทรออกดังนั้นฉันต้องทำการโทรแบบวนซ้ำ ปัญหาคือว่าลูปแบบขนานจะออกก่อนที่การเรียก WCF จะเสร็จสมบูรณ์ คุณจะปรับการทำงานให้เป็นไปตามที่คาดไว้ได้อย่างไร var ids = new List<string>() { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" }; var customers = new System.Collections.Concurrent.BlockingCollection<Customer>(); Parallel.ForEach(ids, async i => { ICustomerRepo repo = new CustomerRepo(); var cust = await repo.GetCustomer(i); customers.Add(cust); }); foreach ( var …

3
BindingFlags.IgnoreCase ไม่ทำงานกับ Type.GetProperty ()?
ลองนึกภาพต่อไปนี้ ประเภท T มี บริษัท สาขา เมื่อรันวิธีการต่อไปนี้มันทำงานได้อย่างสมบูรณ์: Type t = typeof(T); t.GetProperty("Company") สายต่อไปนี้ฉันได้รับเป็นโมฆะ Type t = typeof(T); t.GetProperty("company", BindingFlags.IgnoreCase) ใครมีความคิดบ้าง

8
วิธีรับชื่อเดือนที่สมบูรณ์จาก DateTime
วิธีที่เหมาะสมในการรับชื่อที่สมบูรณ์ของDateTimeวัตถุเดือนคืออะไร? เช่น,JanuaryDecember ฉันกำลังใช้: DateTime.Now.ToString("MMMMMMMMMMMMM"); ฉันรู้ว่ามันไม่ใช่วิธีที่ถูกต้องที่จะทำ
183 c#  datetime  calendar 

10
รับค่าพจนานุกรมโดยคีย์
ฉันจะรับค่าพจนานุกรมโดยใช้ฟังก์ชั่นคีย์ได้อย่างไร รหัสฟังก์ชั่นของฉันคือสิ่งนี้ (และคำสั่งที่ฉันลอง แต่ไม่ได้ผล): static void XML_Array(Dictionary<string, string> Data_Array) { String xmlfile = Data_Array.TryGetValue("XML_File", out value); } รหัสปุ่มของฉันคือสิ่งนี้ private void button2_Click(object sender, EventArgs e) { Dictionary<string, string> Data_Array = new Dictionary<string, string>(); Data_Array.Add("XML_File", "Settings.xml"); XML_Array(Data_Array); } ฉันต้องการสิ่งนี้: ในXML_Arrayฟังก์ชั่นจะเป็น สตริง xmlfile = Settings.xml
183 c#  dictionary  key 

6
ผ่าน System.Type ที่สร้างอินสแตนซ์เป็นพารามิเตอร์ประเภทสำหรับคลาสทั่วไป
ชื่อนั้นค่อนข้างคลุมเครือ สิ่งที่ฉันอยากรู้คือถ้าเป็นไปได้: string typeName = <read type name from somwhere>; Type myType = Type.GetType(typeName); MyGenericClass<myType> myGenericClass = new MyGenericClass<myType>(); เห็นได้ชัดว่า MyGenericClass อธิบายไว้เป็น: public class MyGenericClass<T> ตอนนี้คอมไพเลอร์บ่นว่าไม่พบ 'ประเภทหรือเนมสเปซ' myType '"ต้องมีวิธีในการทำเช่นนี้
183 c#  .net  generics 

13
C # vs Java Enum (สำหรับผู้ที่เพิ่งเริ่มใช้ C #)
ฉันเคยเขียนโปรแกรมใน Java มาระยะหนึ่งแล้วเพิ่งถูกโยนลงในโปรเจ็กต์ที่เขียนด้วยภาษา C # ทั้งหมด ฉันพยายามที่จะเพิ่มความเร็วใน C # และสังเกตว่า enums ใช้ในหลาย ๆ ที่ในโครงการใหม่ของฉัน แต่จากการมองเห็นครั้งแรก Enums ของ C # ดูเหมือนจะง่ายกว่าการใช้ Java 1.5+ ใครสามารถระบุความแตกต่างระหว่าง C # และ Java enums และวิธีการเอาชนะความแตกต่าง? (ฉันไม่ต้องการที่จะเริ่มสงครามภาษาเปลวไฟฉันแค่อยากรู้วิธีทำบางสิ่งใน C # ที่ฉันเคยทำใน Java) ตัวอย่างเช่นใครบางคนสามารถโพสต์คู่ C # ให้กับตัวอย่างที่เป็นที่นิยมของ Planet ได้หรือไม่? public enum Planet { MERCURY (3.303e+23, 2.4397e6), VENUS (4.869e+24, 6.0518e6), …

5
ไม่สามารถพิมพ์ใน Visual Studio
ฉันไม่สามารถแก้ไขไฟล์ใด ๆ ในโครงการใน Visual Studio 2013 มันเกิดขึ้นในโครงการเดียวเท่านั้น ถ้าฉันเปิดโปรเจ็กต์อื่นฉันสามารถพิมพ์ได้ แต่เมื่อฉันกลับไปที่โปรเจ็กต์ปัญหาฉันไม่สามารถพิมพ์ในหน้าต่างตัวแก้ไขได้ ไม่แน่ใจว่ามันเป็นเรื่องสำคัญหรือไม่ แต่เป็นโครงการที่ให้ปัญหาแก่ฉันซึ่งเรากำลังใช้ SVN อยู่ โครงการอื่น ๆ เป็นเพียงโครงการในเครื่อง ฉันรีสตาร์ท Visual Stuido รีสตาร์ทคอมพิวเตอร์และยังไม่สามารถแก้ไขไฟล์ได้ ความคิดใด ๆ

3
ฉันจะคืนค่าฟิลด์ 'id' หลังจากแทรก LINQ ได้หรือไม่
เมื่อฉันป้อนวัตถุลงในฐานข้อมูลด้วย Linq-to-SQL ฉันจะได้รับรหัสที่ฉันเพิ่งแทรกโดยไม่ต้องทำการเรียก db อื่นได้หรือไม่ ฉันคิดว่ามันค่อนข้างง่ายฉันไม่รู้
182 c#  .net  linq  linq-to-sql 

5
อินสแตนซ์ของคลาสแบบคงที่ไม่ซ้ำกับคำขอหรือเซิร์ฟเวอร์ใน ASP.NET หรือไม่
บนเว็บไซต์ ASP.NET มีคลาสสแตติกที่ไม่ซ้ำกันสำหรับแต่ละคำขอของเว็บหรือพวกมันจะถูกสร้างอินสแตนซ์เมื่อใดก็ตามที่จำเป็นและ GCed เมื่อใดก็ตามที่ GC ตัดสินใจที่จะกำจัดพวกเขา? เหตุผลที่ฉันถามก็เพราะฉันได้เขียนบางคลาสคงที่ก่อนใน C # และพฤติกรรมที่แตกต่างกว่าที่ฉันคาดไว้ ฉันคาดหวังว่าคลาสสแตติกจะไม่ซ้ำกันในแต่ละคำขอ แต่ดูเหมือนจะไม่เป็นเช่นนั้น หากพวกเขาไม่ซ้ำกันในแต่ละคำขอมีวิธีที่จะอนุญาตให้พวกเขาเป็น? ปรับปรุง: คำตอบ driis ให้ฉันเป็นสิ่งที่ฉันต้องการ ฉันใช้คลาสเดี่ยวอยู่แล้ว แต่มันใช้อินสแตนซ์แบบคงที่และดังนั้นจึงถูกแชร์ระหว่างคำขอแม้ว่าผู้ใช้จะแตกต่างกันซึ่งในกรณีนี้เป็นสิ่งที่ไม่ดี การใช้HttpContext.Current.Itemsแก้ปัญหาของฉันได้อย่างสมบูรณ์แบบ สำหรับทุกคนที่สะดุดกับคำถามนี้ในอนาคตนี่คือการนำไปปฏิบัติของฉันง่ายและสั้นลงเพื่อให้เข้าใจรูปแบบได้ง่าย: using System.Collections; using System.Web; public class GloballyAccessibleClass { private GloballyAccessibleClass() { } public static GloballyAccessibleClass Instance { get { IDictionary items = HttpContext.Current.Items; if(!items.Contains("TheInstance")) { items["TheInstance"] = new …
182 c#  asp.net  static 

18
วิธีการผูก enum กับตัวควบคุม combobox ใน WPF?
ฉันพยายามหาตัวอย่างง่ายๆที่แสดง enums ตามที่เป็นอยู่ ตัวอย่างทั้งหมดที่ฉันได้เห็นพยายามที่จะเพิ่มสตริงการแสดงที่ดูดี แต่ฉันไม่ต้องการความซับซ้อนนั้น โดยทั่วไปฉันมีคลาสที่มีคุณสมบัติทั้งหมดที่ฉันผูกโดยตั้งค่า DataContext เป็นคลาสนี้ก่อนจากนั้นระบุการโยงเช่นนี้ในไฟล์ xaml: <ComboBox ItemsSource="{Binding Path=EffectStyle}"/> แต่สิ่งนี้จะไม่แสดงค่า enum ในComboBoxรายการเป็น
182 c#  .net  wpf  xaml  data-binding 

2
ฉันจะตรวจสอบว่าบริการ Windows กำลังทำงานอยู่ได้อย่างไร
ฉันมีแอปพลิเคชันใน C # (2.0 ทำงานบน XP ฝังตัว) ที่กำลังสื่อสารกับ 'watchdog' ที่ใช้งานเป็นบริการ Windows เมื่ออุปกรณ์บู๊ตบริการนี้มักจะใช้เวลาในการเริ่มต้น ฉันต้องการตรวจสอบจากรหัสของฉันหากบริการกำลังทำงานอยู่ ฉันจะทำสิ่งนี้ได้อย่างไร

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