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

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

9
เอนทิตีกรอบการรีเฟรชบริบท?
ฉันจะรีเฟรชบริบทได้อย่างไร ฉันมีเอนทิตีตามมุมมองจากฐานข้อมูลของฉันและเมื่อฉันทำการอัปเดตบนตารางหนึ่งเอนทิตีที่มีคุณสมบัติการนำทางไปยังมุมมองเอนทิตีกำลังอัปเดต แต่มุมมองไม่รีเฟรชสอดคล้องกับการอัปเดตใหม่ ... เพียงแค่ต้องการรับอีกครั้งจาก ฐานข้อมูล ขอบคุณ!

1
[CallerMemberName] ทำงานช้าเมื่อเทียบกับทางเลือกอื่นเมื่อใช้ INotifyPropertyChanged หรือไม่
มีบทความที่ดีที่แนะนำให้มีวิธีการที่แตกต่างกันสำหรับการดำเนินการINotifyPropertyChanged พิจารณาการใช้งานพื้นฐานต่อไปนี้: class BasicClass : INotifyPropertyChanged { public event PropertyChangedEventHandler PropertyChanged; private void FirePropertyChanged(string propertyName) { var handler = PropertyChanged; if (handler != null) handler(this, new PropertyChangedEventArgs(propertyName)); } private int sampleIntField; public int SampleIntProperty { get { return sampleIntField; } set { if (value != sampleIntField) { sampleIntField = value; …

2
TransactionScope ย้อนธุรกรรมอย่างไร
ฉันกำลังเขียนการทดสอบการรวมซึ่งฉันจะแทรกวัตถุจำนวนหนึ่งลงในฐานข้อมูลจากนั้นตรวจสอบเพื่อให้แน่ใจว่าวิธีการของฉันดึงวัตถุเหล่านั้นมาหรือไม่ การเชื่อมต่อกับฐานข้อมูลของฉันคือผ่าน NHibernate ... และวิธีการสร้างการทดสอบตามปกติของฉันคือการทำสิ่งต่อไปนี้: NHibernateSession.BeginTransaction(); //use nhibernate to insert objects into database //retrieve objects via my method //verify actual objects returned are the same as those inserted NHibernateSession.RollbackTransaction(); อย่างไรก็ตามฉันเพิ่งค้นพบเกี่ยวกับTransactionScopeซึ่งเห็นได้ชัดว่าสามารถใช้เพื่อจุดประสงค์นี้ ... บางโค้ดตัวอย่างที่ฉันได้พบจะเป็นดังนี้: public static int AddDepartmentWithEmployees(Department dept) { int res = 0; DepartmentAdapter deptAdapter = new DepartmentAdapter(); EmployeeAdapter empAdapter = …

3
Async / Await vs Threads
ใน. Net 4.5 Microsoft ได้เพิ่มAsync/Awaitคุณลักษณะใหม่เพื่อลดความซับซ้อนของการเข้ารหัสแบบอะซิงโครนัส อย่างไรก็ตามฉันสงสัย สามารถAsync/Awaitแทนที่วิธีการใช้งานแบบเก่าได้อย่างสมบูรณ์ Threads? คือAsync/Awaitความสามารถในการทำอะไรก็ตามThreadสามารถทำแบบไม่พร้อม? ใช้ได้Async/Awaitเฉพาะกับบางวิธีเช่นWebClient.DownloadStringAsyncหรือฉันสามารถแปลงวิธีการซิงโครนัสเพื่อให้ใช้งานAsync/Awaitได้หรือไม่เพื่อบล็อกเธรดหลัก
101 c#  .net 

4
วิธีที่ดีที่สุดในการแปลง IList หรือ IEnumerable เป็น Array
ฉันมีแบบสอบถาม HQL ที่สามารถสร้างรายการผลลัพธ์หรือ IE ไม่สามารถระบุผลลัพธ์ได้ อย่างไรก็ตามฉันต้องการให้มันส่งคืนอาร์เรย์ของเอนทิตีที่ฉันเลือกวิธีใดเป็นวิธีที่ดีที่สุดในการบรรลุเป้าหมายนั้น ฉันสามารถแจงนับและสร้างอาร์เรย์หรือใช้ CopyTo () อาร์เรย์ที่กำหนด มีวิธีไหนที่ดีกว่านี้ไหม? ฉันใช้วิธี CopyTo-approach
101 c#  nhibernate 

6
จะส่งคืนไฟล์โดยใช้ Web API ได้อย่างไร
ฉันใช้เว็บ ASP.NET API ฉันต้องการดาวน์โหลด PDF ด้วย C # จาก API (ที่ API สร้างขึ้น) ฉันขอ API ส่งคืนได้byte[]ไหม และสำหรับแอปพลิเคชัน C # ฉันสามารถทำได้: byte[] pdf = client.DownloadData("urlToAPI");? และ File.WriteAllBytes()?

2
LINQ - แปลงรายการเป็นพจนานุกรมโดยมีค่าเป็นรายการ
ฉันมี List<MyObject> ที่ฉันดึงมาจากฐานข้อมูล อย่างไรก็ตามฉันต้องการให้คีย์โดยคุณสมบัติใน MyObject เพื่อวัตถุประสงค์ในการจัดกลุ่ม วิธีที่ดีที่สุดสำหรับ LINQ ในการส่งรายการของฉันไปที่: Dictionary<long, List<MyObject>> ฉันมีสิ่งต่อไปนี้: myObjectList.ToDictionary(x => x.KeyedProperty) แต่ผลตอบแทน: Dictionary<long, MyObject>
101 c#  .net  linq 

12
ตัดเครื่องหมายคำพูดคู่จากสตริงใน. NET
ฉันพยายามจับคู่ HTML ที่มีรูปแบบไม่สอดคล้องกันและจำเป็นต้องตัดเครื่องหมายคำพูดคู่ออก ปัจจุบัน: <input type="hidden"> เป้าหมาย: <input type=hidden> นี่เป็นสิ่งที่ผิดเพราะฉันหนีไม่ถูก: s = s.Replace ("" "," "); สิ่งนี้ผิดเพราะไม่มีอักขระอักขระว่าง (ตามความรู้ของฉัน): s = s.Replace('"', ''); การผสมอักขระไวยากรณ์ / Escape สำหรับการแทนที่เครื่องหมายคำพูดคู่ด้วยสตริงว่างคืออะไร?
101 c#  .net  vb.net 

5
แสดงสตริงเป็น html ในมุมมอง mvc ของ asp.net
ฉันมีคอนโทรลเลอร์ที่สร้างสตริงที่มีมาร์กอัป html ตอนนี้เมื่อฉันแสดงบนมุมมองมันจะแสดงเป็นสตริงธรรมดาที่มีแท็กทั้งหมด ฉันพยายามใช้ตัวช่วย Html เพื่อเข้ารหัส / ถอดรหัสเพื่อแสดงอย่างถูกต้อง แต่ใช้งานไม่ได้ string str= "<a href="/Home/Profile/seeker">seeker</a> has applied to <a href="/Jobs/Details/9">Job</a> floated by you.</br>"; ในมุมมองของฉัน @Html.Encode(str)

3
จะพิมพ์การติดตามสแต็กแบบเต็มได้อย่างไร?
ตัวอย่างเช่นในที่เดียว ... //---------------a try { // some network call } catch(WebException we) { throw new MyCustomException("some message ....", we); } ... และอีกที่หนึ่ง ... //--------------b try { // invoke code above } catch(MyCustomException we) { Debug.Writeline(we.stacktrace); // <---------------- } stacktrace ที่ฉันพิมพ์มันเริ่มจาก a ถึง b เท่านั้นไม่รวม stacktrace ภายในจาก WebException ฉันจะพิมพ์ stacktrace ทั้งหมดได้อย่างไร …


6
วิธีใช้ IEqualityComparer
ฉันมีระฆังในฐานข้อมูลที่มีหมายเลขเดียวกัน ฉันต้องการรับทั้งหมดโดยไม่ต้องทำซ้ำ ฉันสร้างคลาสเปรียบเทียบเพื่อทำงานนี้ แต่การดำเนินการของฟังก์ชันทำให้เกิดความล่าช้าอย่างมากจากฟังก์ชันโดยไม่แตกต่างจาก 0.6 วินาทีถึง 3.2 วินาที! ฉันทำถูกต้องหรือฉันต้องใช้วิธีอื่น? reg.AddRange( (from a in this.dataContext.reglements join b in this.dataContext.Clients on a.Id_client equals b.Id where a.date_v <= datefin && a.date_v >= datedeb where a.Id_client == b.Id orderby a.date_v descending select new Class_reglement { nom = b.Nom, code = b.code, Numf = a.Numf, …

6
การใช้คลาส ArraySegment <T> คืออะไร?
ฉันเพิ่งเจอArraySegment&lt;byte&gt;ประเภทในขณะที่คลาสย่อยของMessageEncoderชั้นเรียน ตอนนี้ฉันเข้าใจแล้วว่ามันเป็นเซ็กเมนต์ของอาร์เรย์ที่กำหนดใช้ค่าออฟเซ็ตไม่สามารถนับได้และไม่มีตัวสร้างดัชนี แต่ฉันยังไม่เข้าใจการใช้งาน ใครช่วยอธิบายด้วยตัวอย่างได้ไหม
101 c#  arrays  .net 

4
ความช่วยเหลือเกี่ยวกับข้อผิดพลาดทั่วไปของ C # - "ประเภท" T "ต้องเป็นประเภทค่าที่ไม่เป็นค่าว่างได้"
ฉันเพิ่งเริ่มใช้ C # และไม่เข้าใจว่าทำไมโค้ดต่อไปนี้ใช้ไม่ได้ public static Nullable&lt;T&gt; CoalesceMax&lt;T&gt;(Nullable&lt;T&gt; a, Nullable&lt;T&gt; b) where T : IComparable { if (a.HasValue &amp;&amp; b.HasValue) return a.Value.CompareTo(b.Value) &lt; 0 ? b : a; else if (a.HasValue) return a; else return b; } // Sample usage: public DateTime? CalculateDate(DataRow row) { DateTime? result = null; if …
100 c#  generics 

6
รายการอ่านอย่างเดียวหรือรายการที่ไม่สามารถแก้ไขได้ใน. NET 4.0
จากสิ่งที่ฉันสามารถบอกได้ว่า. NET 4.0 ยังขาดรายการแบบอ่านอย่างเดียว เหตุใดเฟรมเวิร์กจึงยังขาดฟังก์ชันนี้ นี่เป็นฟังก์ชันที่ใช้กันทั่วไปสำหรับการออกแบบที่ขับเคลื่อนด้วยโดเมนไม่ใช่หรือ ข้อดีอย่างหนึ่งที่ Java มีเหนือ C # คือในรูปแบบของเมธอดCollections.unmodifiablelist (list)ซึ่งดูเหมือนว่าจะค้างชำระเป็นเวลานานใน IList &lt;T&gt; หรือ List &lt;T&gt; การใช้IEnumerable&lt;T&gt;เป็นวิธีแก้ปัญหาที่ง่ายที่สุด - ToListสามารถใช้และส่งคืนสำเนาได้

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