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

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

7
แปลงพา ธ ไฟล์เป็นไฟล์ URI หรือไม่
. NET Framework มีวิธีการใด ๆ ในการแปลงเส้นทาง (เช่น"C:\whatever.txt") ไปเป็นไฟล์ URI (เช่น"file:///C:/whatever.txt") หรือไม่? System.Uriชั้นจะมีย้อนกลับ (จากแฟ้ม URI ไปยังเส้นทางที่แน่นอน) แต่ไม่มีอะไรเท่าที่ผมสามารถหาสำหรับการแปลงเป็นไฟล์ URI นอกจากนี้นี่ไม่ใช่แอปพลิเคชัน ASP.NET
201 c#  .net  path  uri 

16
แอปพลิเคชั่นคอนโซลกำบังรหัสผ่าน
ฉันลองรหัสต่อไปนี้ ... string pass = ""; Console.Write("Enter your password: "); ConsoleKeyInfo key; do { key = Console.ReadKey(true); // Backspace Should Not Work if (key.Key != ConsoleKey.Backspace) { pass += key.KeyChar; Console.Write("*"); } else { Console.Write("\b"); } } // Stops Receving Keys Once Enter is Pressed while (key.Key != ConsoleKey.Enter); Console.WriteLine(); …

12
ลบนามสกุลไฟล์ออกจากสตริงชื่อไฟล์
หากฉันมีสตริงที่บอกว่า"abc.txt"มีวิธีที่รวดเร็วในการรับซับสตริงที่เป็นเพียงแค่"abc"? ฉันไม่สามารถทำได้fileName.IndexOf('.')เพราะชื่อไฟล์อาจเป็น"abc.123.txt"หรืออะไรก็ได้และฉันแค่ต้องการกำจัดส่วนขยาย (เช่น"abc.123")
201 c#  string  parsing 

4
วิธีการต่อเชื่อม IENumerable <T> สองอันเข้ากับ IEnumerable <T> ใหม่ได้อย่างไร
ฉันมีสองอินสแตนซ์ของIEnumerable&lt;T&gt;(พร้อมกันT) ฉันต้องการอินสแตนซ์ใหม่IEnumerable&lt;T&gt;ซึ่งเป็นการเชื่อมต่อของทั้งสอง มีวิธีการ build-in ใน. Net เพื่อทำสิ่งนั้นหรือฉันต้องเขียนเอง?

14
ความแตกต่างระหว่างใหม่และแทนที่
สงสัยว่าความแตกต่างระหว่างสิ่งต่อไปนี้: กรณีที่ 1: คลาสพื้นฐาน public void DoIt(); กรณีที่ 1: คลาสที่รับมา public new void DoIt(); กรณีที่ 2: คลาสฐาน public virtual void DoIt(); กรณีที่ 2: คลาสที่รับมา public override void DoIt(); ทั้งกรณีที่ 1 และ 2 ดูเหมือนว่าจะมีผลเหมือนกันตามการทดสอบที่ฉันใช้ มีความแตกต่างหรือวิธีที่ต้องการหรือไม่?

6
รับเส้นทางแบบเต็มโดยไม่มีชื่อไฟล์จากเส้นทางที่มีชื่อไฟล์
มีอะไรในตัวSystem.IO.Pathที่ทำให้ฉันเป็นเพียงพา ธ ตัวอย่างเช่นถ้าฉันมี string @ "C: \ เว็บเซิร์ฟเวอร์ \ ประชาชน \ myCompany \ configs \ promo.xml" มีวิธี BCL ใดบ้างที่จะให้ฉัน "C: \ เว็บเซิร์ฟเวอร์ \ ประชาชน \ myCompany \ configs \"?
200 c#  file  path 

14
ความแตกต่างระหว่างไดนามิก (C # 4) และ var คืออะไร
ฉันได้อ่านบทความเกี่ยวกับคำหลักใหม่ที่จัดส่งด้วย C # v4 แต่ฉันไม่สามารถแยกความแตกต่างระหว่าง "ไดนามิก" และ "var" ได้ บทความนี้ทำให้ฉันคิดเกี่ยวกับมัน แต่ฉันยังไม่เห็นความแตกต่าง เป็นเพราะคุณสามารถใช้ "var" เป็นตัวแปรโลคอลเท่านั้น แต่เป็นไดนามิคทั้งในท้องถิ่นและทั่วโลก? คุณสามารถแสดงรหัสที่ไม่มีคำหลักแบบไดนามิกแล้วแสดงรหัสเดียวกันกับคำหลักแบบไดนามิกได้หรือไม่
199 c#  dynamic 

11
เมื่อใดที่ควรใช้ TaskCompletionSource <T>
AFAIK ทั้งหมดก็รู้ก็คือว่าในบางจุดของมันSetResultหรือSetExceptionวิธีการที่จะถูกเรียกตัวไปดำเนินการTask&lt;T&gt;สัมผัสผ่านTaskคุณสมบัติ กล่าวอีกนัยหนึ่งมันทำหน้าที่เป็นผู้อำนวยการสร้างTask&lt;TResult&gt;และเสร็จสมบูรณ์ ฉันเห็นตัวอย่างที่นี่ : หากฉันต้องการวิธีในการรัน Func แบบอะซิงโครนัสและมีภารกิจเพื่อแสดงการดำเนินการนั้น public static Task&lt;T&gt; RunAsync&lt;T&gt;(Func&lt;T&gt; function) { if (function == null) throw new ArgumentNullException(“function”); var tcs = new TaskCompletionSource&lt;T&gt;(); ThreadPool.QueueUserWorkItem(_ =&gt; { try { T result = function(); tcs.SetResult(result); } catch(Exception exc) { tcs.SetException(exc); } }); return tcs.Task; } ซึ่งสามารถนำมาใช้ * ถ้าฉันไม่ได้มีTask.Factory.StartNew- แต่ผมไม่Task.Factory.StartNewได้ …


5
ตัวจัดการข้อยกเว้น. NET Global ในแอปพลิเคชันคอนโซล
คำถาม: ฉันต้องการกำหนดตัวจัดการข้อยกเว้นส่วนกลางสำหรับข้อยกเว้นที่ไม่สามารถจัดการได้ในแอปพลิเคชันคอนโซลของฉัน ใน asp.net หนึ่งสามารถกำหนดหนึ่งใน global.asax และใน windows applications / บริการหนึ่งสามารถกำหนดดังนี้ AppDomain currentDomain = AppDomain.CurrentDomain; currentDomain.UnhandledException += new UnhandledExceptionEventHandler(MyExceptionHandler); แต่ฉันจะกำหนดตัวจัดการข้อยกเว้นส่วนกลางสำหรับแอปพลิเคชันคอนโซลได้อย่างไร currentDomain ดูเหมือนว่าจะไม่ทำงาน (. NET 2.0)? แก้ไข: ผิดพลาดโง่ ๆ ใน VB.NET เราต้องเพิ่มคีย์เวิร์ด "AddHandler" ต่อหน้าโดเมนปัจจุบันหรือมิฉะนั้นจะไม่เห็นเหตุการณ์ UnhandledException ใน IntelliSense ... นั่นเป็นเพราะคอมไพเลอร์ VB.NET และ C # ปฏิบัติต่อการจัดการเหตุการณ์ต่างกัน

11
ไม่มี ConcurrentList <T> ใน. Net 4.0?
ฉันตื่นเต้นที่ได้เห็นSystem.Collections.Concurrentnamespace ใหม่ใน. Net 4.0 ค่อนข้างดี! ผมเคยเห็นConcurrentDictionary, ConcurrentQueue, ConcurrentStack, และConcurrentBagBlockingCollection ConcurrentList&lt;T&gt;สิ่งหนึ่งที่น่าจะเป็นไปอย่างลึกลับหายไปเป็น ฉันต้องเขียนเอง (หรือเอามันออกจากเว็บ :))? ฉันขาดอะไรบางอย่างชัดเจนที่นี่?

12
วิธีการตั้งค่าเริ่มต้นด้วย Html.TextBoxFor?
คำถามง่ายๆถ้าคุณใช้ Html Helper จาก ASP.NET MVC Framework ที่ 1 Html.TextBox(string name, object value)มันเป็นเรื่องง่ายที่จะตั้งค่าเริ่มต้นในช่องเพราะมีเกิน เมื่อฉันลองใช้วิธีHtml.TextBoxForการคาดเดาครั้งแรกของฉันคือลองทำสิ่งต่อไปนี้ซึ่งใช้งานไม่ได้: &lt;%: Html.TextBoxFor(x =&gt; x.Age, new { value = "0"}) %&gt; ฉันควรจะติดกับ Html.TextBox (สตริงวัตถุ) ตอนนี้หรือไม่

7
วิธีอ้างอิงคลาสและเมธอดทั่วไปในเอกสารคู่มือ xml
เมื่อเขียนเอกสาร xml คุณสามารถใช้&lt;see cref="something"&gt;something&lt;/see&gt;งานได้แน่นอน แต่คุณจะอ้างอิงคลาสหรือวิธีที่มีประเภททั่วไปได้อย่างไร public class FancyClass&lt;T&gt; { public string FancyMethod&lt;K&gt;(T value) { return "something fancy"; } } ถ้าฉันจะเขียนเอกสาร xml ที่ไหนสักแห่งฉันจะอ้างอิงคลาสแฟนซีได้อย่างไร? ฉันจะอ้างอิงกได้FancyClass&lt;string&gt;อย่างไร วิธีการเกี่ยวกับอะไร? FancyClass&lt;int&gt;ยกตัวอย่างเช่นในชั้นเรียนที่แตกต่างกันผมอยากที่จะให้ความรู้ผู้ใช้ว่าผมจะกลับมาตัวอย่างของ ฉันจะทำสิ่งที่เห็น cref สำหรับที่?

3
ฉันต้องการไฟล์ Global.asax.cs เลยหรือไม่หากฉันใช้คลาส OWIN Startup.cs และย้ายการกำหนดค่าทั้งหมดไปที่นั่น
ตัวอย่างเช่นในแอปพลิเคชัน ASP.NET MVC 5 ใหม่ล่าสุดที่สร้างจากเทมเพลต MVC กับบัญชีบุคคลถ้าฉันลบGlobal.asax.csคลาสและย้ายมันเป็นรหัสการกำหนดค่าไปยังStartup.cs Configuration()วิธีการดังต่อไปนี้ข้อเสียคืออะไร? public partial class Startup { public void Configuration(IAppBuilder app) { AreaRegistration.RegisterAllAreas(); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); ConfigureAuth(app); } } Upsides สำหรับฉันคือเมื่ออัพเกรดแอปพลิเคชัน ASP.NET 4 เป็น ASP.NET 5 และการใช้ชิ้นส่วนที่ตอนนี้ต้องกำหนดค่าในคลาส Startup.cs ฉันไม่ได้พึ่งพาการฉีดและการกำหนดค่าอื่น ๆ ในสองคลาสที่แตกต่างกันซึ่งดูเหมือนว่าเกี่ยวข้องกัน เพื่อเริ่มต้นและการกำหนดค่า

15
การเขียนข้อมูลลงในไฟล์ CSV ใน C #
ฉันพยายามเขียนลงcsvไฟล์แบบเรียงต่อกันโดยใช้ภาษา C # นี่คือหน้าที่ของฉัน string first = reader[0].ToString(); string second=image.ToString(); string csv = string.Format("{0},{1}\n", first, second); File.WriteAllText(filePath, csv); ฟังก์ชั่นทั้งหมดทำงานภายในวงและทุกแถวควรเขียนลงcsvไฟล์ ในกรณีของฉันแถวถัดไปจะเขียนทับแถวที่มีอยู่และท้ายที่สุดฉันได้รับการบันทึกเดียวในไฟล์ csv ซึ่งเป็นระเบียนสุดท้าย ฉันจะเขียนแถวทั้งหมดในcsvไฟล์ได้อย่างไร?
198 c#  file  csv 

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