คำถามติดแท็ก .net

อย่าใช้สำหรับคำถามเกี่ยวกับ. NET Core - ใช้ [.net-core] แทน . NET Framework เป็นเฟรมเวิร์กซอฟต์แวร์ที่ออกแบบมาเป็นหลักสำหรับระบบปฏิบัติการ Microsoft Windows มันรวมถึงการใช้งานของ Base Class Library, Common Language Runtime (ปกติเรียกว่า CLR), Common Type System (ปกติเรียกว่า CTS) และ Dynamic Language Runtime รองรับภาษาการเขียนโปรแกรมจำนวนมากรวมถึง C #, VB.NET, F # และ C ++ / CLI

27
ทำไมไม่สืบทอดจากรายการ <T>
เมื่อวางแผนโปรแกรมของฉันฉันมักจะเริ่มต้นด้วยความคิดอย่าง: ทีมฟุตบอลเป็นเพียงรายชื่อผู้เล่นฟุตบอล ดังนั้นฉันควรเป็นตัวแทนด้วย: var football_team = new List&lt;FootballPlayer&gt;(); การเรียงลำดับของรายการนี้แสดงถึงลำดับที่ผู้เล่นแสดงไว้ในบัญชีรายชื่อ แต่ฉันตระหนักในภายหลังว่าทีมยังมีคุณสมบัติอื่น ๆ นอกเหนือจากรายชื่อผู้เล่นที่ต้องบันทึกไว้ ตัวอย่างเช่นคะแนนรวมที่ดำเนินการอยู่ในฤดูกาลนี้งบประมาณปัจจุบันสีสม่ำเสมอstringชื่อตัวแทนของทีม ฯลฯ ดังนั้นฉันคิดว่า: โอเคทีมฟุตบอลก็เหมือนกับรายการของผู้เล่น แต่นอกจากนี้ยังมีชื่อ (a string) และคะแนนรวมทั้งหมด (an int) .NET ไม่มีคลาสสำหรับเก็บทีมฟุตบอลดังนั้นฉันจะสร้างคลาสของตัวเอง โครงสร้างที่มีอยู่ที่คล้ายกันและเกี่ยวข้องมากที่สุดคือList&lt;FootballPlayer&gt;ดังนั้นฉันจะสืบทอดจากมัน: class FootballTeam : List&lt;FootballPlayer&gt; { public string TeamName; public int RunningTotal } แต่มันกลับกลายเป็นว่าแนวทางในการพูดว่าคุณไม่ควรสืบทอดมาจาก List&lt;T&gt;ฉันสับสนอย่างละเอียดโดยแนวทางนี้สองประการ ทำไมจะไม่ล่ะ? เห็นได้ชัดว่ามีการเพิ่มประสิทธิภาพอย่างใดเพื่อให้ได้ประสิทธิภาพList งั้นเหรอ ฉันจะทำให้เกิดปัญหาประสิทธิภาพการทำงานถ้าฉันขยายList? จะเกิดอะไรขึ้น เหตุผลที่ผมเคยเห็นก็คือการที่Listให้บริการโดยไมโครซอฟท์และผมสามารถควบคุมมันไม่ได้ดังนั้นฉันไม่สามารถเปลี่ยนได้ในภายหลังหลังจากเปิดเผย "ประชาชน API" แต่ฉันพยายามเข้าใจสิ่งนี้ API สาธารณะคืออะไรและทำไมฉันจึงควรใส่ใจ …
1398 c#  .net  list  oop  inheritance 


30
ฉันจะอัพเดต GUI จากเธรดอื่นได้อย่างไร?
ซึ่งเป็นวิธีที่ง่ายที่สุดในการปรับปรุงLabelจากที่อื่นThread? ฉันมีการFormทำงานthread1และจากที่ฉันเริ่มหัวข้ออื่น ( thread2) ในขณะที่thread2กำลังประมวลผลไฟล์บางไฟล์ฉันต้องการที่จะอัปเดตLabelในFormกับสถานะปัจจุบันของการthread2ทำงานของ ฉันจะทำสิ่งนั้นได้อย่างไร


30
Path.Combine สำหรับ URL?
Path.Combineมีประโยชน์ แต่มีหน้าที่คล้ายกันใน. NET Framework สำหรับURLหรือไม่ ฉันกำลังหาไวยากรณ์เช่นนี้ Url.Combine("http://MyUrl.com/", "/Images/Image.jpg") ซึ่งจะกลับมา: "http://MyUrl.com/Images/Image.jpg"
1243 c#  .net  asp.net  url  path 


8
ฉันจะใช้การสะท้อนเพื่อเรียกใช้วิธีการทั่วไปได้อย่างไร
อะไรคือวิธีที่ดีที่สุดในการเรียกใช้เมธอดทั่วไปเมื่อไม่รู้จักพารามิเตอร์ชนิดในเวลารวบรวม แต่จะได้รับแบบไดนามิก ณ รันไทม์ ลองพิจารณาโค้ดตัวอย่างต่อไปนี้ - ภายในExample()เมธอดวิธีที่กระชับที่สุดในการเรียกGenericMethod&lt;T&gt;()ใช้โดยTypeเก็บในmyTypeตัวแปรคืออะไร? public class Sample { public void Example(string typeName) { Type myType = FindType(typeName); // What goes here to call GenericMethod&lt;T&gt;()? GenericMethod&lt;myType&gt;(); // This doesn't work // What changes to call StaticMethod&lt;T&gt;()? Sample.StaticMethod&lt;myType&gt;(); // This also doesn't work } public void GenericMethod&lt;T&gt;() { // …
1070 c#  .net  generics  reflection 

21
วิธีการใช้ 'async' และ 'รอ'
จากหนึ่งในความเข้าใจของฉันสิ่งสำคัญที่asyncและawaitทำคือการทำให้รหัสง่ายต่อการเขียนและอ่าน - แต่ใช้พวกเขาเท่ากับวางไข่หัวข้อพื้นหลังเพื่อดำเนินการตรรกะระยะเวลานาน? ฉันกำลังลองตัวอย่างพื้นฐานที่สุด ฉันได้เพิ่มความคิดเห็นบางส่วนแบบอินไลน์ คุณช่วยอธิบายให้ฉันฟังได้ไหม // I don't understand why this method must be marked as `async`. private async void button1_Click(object sender, EventArgs e) { Task&lt;int&gt; access = DoSomethingAsync(); // task independent stuff here // this line is reached after the 5 seconds sleep from // DoSomethingAsync() method. Shouldn't …


23
แบบสอบถาม LINQ บน DataTable
ฉันพยายามที่จะทำการสืบค้น LINQ บนวัตถุ DataTable และน่าประหลาดใจฉันพบว่าการดำเนินการแบบสอบถามดังกล่าวบน DataTables ไม่ตรงไปตรงมา ตัวอย่างเช่น: var results = from myRow in myDataTable where results.Field("RowNo") == 1 select results; สิ่งนี้ไม่ได้รับอนุญาต ฉันจะได้รับบางสิ่งเช่นนี้ได้อย่างไร ฉันประหลาดใจที่ไม่อนุญาตให้ใช้คำสั่ง LINQ ใน DataTables!
1031 c#  .net  linq  datatable  .net-3.5 


10
วิธีการหลีกเลี่ยงวงเล็บปีกกา (วงเล็บปีกกา) ในสตริงรูปแบบใน. NET
วงเล็บสามารถหนีการใช้งานstring.Formatได้อย่างไร ตัวอย่างเช่น: String val = "1,2,3" String.Format(" foo {{0}}", val); ตัวอย่างเช่นนี้ไม่ได้โยนยกเว้น foo {0}แต่เอาท์พุทสตริง มีวิธีใดบ้างที่จะหลบหนีวงเล็บได้หรือไม่?
988 c#  .net  string  parsing  formatting 

14
จัดกลุ่มตามหลายคอลัมน์
ฉันจะทำอย่างไรโดย GroupBy หลายคอลัมน์ใน LINQ สิ่งที่คล้ายกับสิ่งนี้ใน SQL: SELECT * FROM &lt;TableName&gt; GROUP BY &lt;Column1&gt;,&lt;Column2&gt; ฉันจะแปลงให้เป็น LINQ ได้อย่างไร: QuantityBreakdown ( MaterialID int, ProductID int, Quantity float ) INSERT INTO @QuantityBreakdown (MaterialID, ProductID, Quantity) SELECT MaterialID, ProductID, SUM(Quantity) FROM @Transactions GROUP BY MaterialID, ProductID
967 c#  .net  linq  group-by  aggregate 



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