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

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

6
ประสิทธิภาพได้รับผลกระทบอย่างไรจากคำสั่งที่ไม่ได้ใช้งาน?
Visual Studio จะสร้างโดยใช้คำสั่งให้คุณโดยอัตโนมัติเมื่อใดก็ตามที่คุณสร้างเพจหรือโครงการใหม่ บางส่วนคุณจะไม่เคยใช้ Visual Studio มีคุณสมบัติที่เป็นประโยชน์ในการ "ลบการใช้งานที่ไม่ได้ใช้" ฉันสงสัยว่าจะมีผลเสียต่อประสิทธิภาพของโปรแกรมหรือไม่หากคำสั่งการใช้งานที่ไม่เคยเข้าถึงยังคงถูกกล่าวถึงที่ด้านบนของไฟล์
111 c#  .net  visual-studio  using 


5
ลำดับมีองค์ประกอบมากกว่าหนึ่งรายการ
ฉันมีปัญหาในการดึงรายการประเภท "RhsTruck" ผ่าน Linq และนำไปแสดง RhsTruck มีคุณสมบัติ Make, Model, Serial และอื่น ๆ ... RhsCustomer มีคุณสมบัติ CustomerName, CustomerAddress, ฯลฯ ... ฉันได้รับข้อผิดพลาด "ลำดับมีองค์ประกอบมากกว่าหนึ่งรายการ" ความคิดใด ๆ ? ฉันเข้าใกล้ผิดทางหรือเปล่า? public RhsCustomer GetCustomer(string customerNumber) { using (RhsEbsDataContext context = new RhsEbsDataContext() ) { RhsCustomer rc = (from x in context.custmasts where x.kcustnum == customerNumber select …
111 c#  .net  asp.net  linq 

4
ฉันจะแจกแจงผ่าน JObject ได้อย่างไร
ฉันกำลังพยายามหาวิธีเข้าถึงข้อมูลที่อยู่ใน JObject ของฉันและฉันไม่สามารถกำหนดวิธีการใช้งานได้ตลอดชีวิต JObject Object = (JObject)Response.Data["my_key"]; ฉันสามารถพิมพ์ลงในคอนโซลโดยใช้ Console.WriteLine (Object) และฉันเห็นข้อมูลดูเหมือนว่า: { "my_data" : "more of my string data" ... } แต่ฉันไม่รู้ว่าจะย้ำ / แจกแจงผ่านมันได้อย่างไรใครมีความคิดบ้าง? ตอนนี้ฉันกำลังสูญเสีย
111 c#  json  json.net 


7
งบล็อคแพงแค่ไหน?
ฉันได้ทดลองกับการประมวลผลแบบหลายเธรดและการประมวลผลแบบขนานและฉันต้องการตัวนับเพื่อทำการนับพื้นฐานและการวิเคราะห์ทางสถิติเกี่ยวกับความเร็วของการประมวลผล เพื่อหลีกเลี่ยงปัญหาในการใช้คลาสของฉันพร้อมกันฉันได้ใช้คำสั่งล็อคกับตัวแปรส่วนตัวในคลาสของฉัน: private object mutex = new object(); public void Count(int amount) { lock(mutex) { done += amount; } } แต่ฉันสงสัยว่า ... การล็อคตัวแปรแพงแค่ไหน? ผลเสียต่อประสิทธิภาพคืออะไร?

9
ทำให้หน้าต่าง WPF ลากได้ไม่ว่าจะคลิกองค์ประกอบใดก็ตาม
คำถามของฉันคือ 2 เท่าและฉันหวังว่าจะมีวิธีแก้ปัญหาที่ง่ายกว่าสำหรับทั้งสองอย่างที่จัดทำโดยWPFแทนที่จะเป็นโซลูชันมาตรฐานจาก WinForms (ซึ่ง Christophe Geers ให้ไว้ก่อนที่ฉันจะชี้แจงนี้) ก่อนอื่นมีวิธีทำให้ Window ลากได้โดยไม่ต้องจับและประมวลผลเหตุการณ์คลิกเมาส์ + ลากหรือไม่? ฉันหมายถึงหน้าต่างสามารถลากได้โดยแถบชื่อเรื่อง แต่ถ้าฉันตั้งค่าหน้าต่างไม่ให้มีและยังคงต้องการให้ลากได้มีวิธีที่จะกำหนดทิศทางเหตุการณ์ใหม่ไปยังสิ่งที่จัดการกับการลากแถบหัวเรื่องหรือไม่ เหรอ? ประการที่สองมีวิธีใช้ตัวจัดการเหตุการณ์กับองค์ประกอบทั้งหมดในหน้าต่างหรือไม่? เช่นเดียวกับทำให้หน้าต่างลากได้ไม่ว่าผู้ใช้จะคลิก + ลากองค์ประกอบใด เห็นได้ชัดว่าไม่ต้องเพิ่มตัวจัดการด้วยตนเองในทุกองค์ประกอบ แค่ทำครั้งเดียว?


7
C # ข้อ จำกัด ประเภททั่วไปสำหรับทุกสิ่งที่เป็นโมฆะ
ดังนั้นฉันจึงมีคลาสนี้: public class Foo<T> where T : ??? { private T item; public bool IsNull() { return item == null; } } ตอนนี้ฉันกำลังมองหาข้อ จำกัด nullประเภทที่ช่วยให้ผมใช้ทุกอย่างที่เป็นพารามิเตอร์ชนิดที่สามารถ นั่นหมายถึงประเภทการอ้างอิงทั้งหมดรวมถึงประเภทNullable( T?) ทั้งหมด: Foo<String> ... = ... Foo<int?> ... = ... ควรจะเป็นไปได้ การใช้classเป็นข้อ จำกัด ประเภททำให้ฉันใช้ประเภทอ้างอิงเท่านั้น ข้อมูลเพิ่มเติม: ฉันกำลังเขียนแอปพลิเคชั่นไปป์และฟิลเตอร์และต้องการใช้nullข้อมูลอ้างอิงเป็นรายการสุดท้ายที่ผ่านเข้าไปในไปป์ไลน์เพื่อให้ตัวกรองทุกตัวสามารถปิดได้อย่างสวยงามทำการล้างข้อมูล ฯลฯ ...
111 c#  generics  nullable 

5
ดำเนินการคำสั่งแทรกและส่งคืน Id ที่แทรกใน Sql
ฉันกำลังแทรกค่าบางอย่างลงในตาราง SQL โดยใช้ C # ใน MVC 4 อันที่จริงฉันต้องการแทรกค่าและส่งคืน 'ID' ของระเบียนที่แทรกล่าสุด ฉันใช้รหัสต่อไปนี้ public class MemberBasicData { public int Id { get; set; } public string Mem_NA { get; set; } public string Mem_Occ { get; set; } } ID จะเพิ่มขึ้นโดยอัตโนมัติในฐานข้อมูลเมื่อใส่ public int CreateNewMember(string Mem_NA, string Mem_Occ ) { using (SqlConnection …

12
แปลงรูปภาพ (เลือกตามเส้นทาง) เป็นสตริง base64
คุณจะแปลงรูปภาพจากเส้นทางบนคอมพิวเตอร์ของผู้ใช้เป็นสตริง base64 ใน C # ได้อย่างไร ตัวอย่างเช่นฉันมีเส้นทางไปยังรูปภาพ (ในรูปแบบC:/image/1.gif) และต้องการให้ URI ข้อมูลdata:image/gif;base64,/9j/4AAQSkZJRgABAgEAYABgAAD..เป็นตัวแทนของ1.gifรูปภาพที่ส่งคืน
111 c#  image  base64 

3
ยืนยันข้อยกเว้นโดยใช้ XUnit
ฉันเป็นมือใหม่สำหรับ XUnit และ Moq ฉันมีวิธีการที่ใช้สตริงเป็นอาร์กิวเมนต์วิธีจัดการข้อยกเว้นโดยใช้ XUnit [Fact] public void ProfileRepository_GetSettingsForUserIDWithInvalidArguments_ThrowsArgumentException() { //arrange ProfileRepository profiles = new ProfileRepository(); //act var result = profiles.GetSettingsForUserID(""); //assert //The below statement is not working as expected. Assert.Throws<ArgumentException>(() => profiles.GetSettingsForUserID("")); } วิธีการทดสอบ public IEnumerable<Setting> GetSettingsForUserID(string userid) { if (string.IsNullOrWhiteSpace(userid)) throw new ArgumentException("User Id Cannot be null"); …
111 c#  unit-testing  xunit 

5
เหตุใด Subjects จึงไม่แนะนำใน. NET Reactive Extensions
ขณะนี้ฉันกำลังจับกับ Reactive Extensions framework สำหรับ. NET และฉันกำลังดำเนินการตามแหล่งข้อมูลแนะนำต่างๆที่ฉันพบ (ส่วนใหญ่เป็นhttp://www.introtorx.com ) แอปพลิเคชันของเราเกี่ยวข้องกับอินเทอร์เฟซฮาร์ดแวร์จำนวนมากที่ตรวจจับเฟรมเครือข่ายสิ่งเหล่านี้จะเป็น IObservables ของฉันจากนั้นฉันก็มีส่วนประกอบหลายอย่างที่จะใช้เฟรมเหล่านั้นหรือทำการแปลงข้อมูลบางอย่างและสร้างเฟรมประเภทใหม่ นอกจากนี้ยังมีส่วนประกอบอื่น ๆ ที่จำเป็นต้องแสดงทุก n เฟรมเช่น ฉันเชื่อว่า Rx จะเป็นประโยชน์สำหรับแอปพลิเคชันของเราอย่างไรก็ตามฉันกำลังดิ้นรนกับรายละเอียดการใช้งานสำหรับอินเทอร์เฟซ IObserver ทรัพยากรส่วนใหญ่ (ถ้าไม่ใช่ทั้งหมด) ที่ฉันอ่านได้บอกว่าฉันไม่ควรใช้อินเทอร์เฟซ IObservable ด้วยตัวเอง แต่ใช้ฟังก์ชันหรือคลาสที่มีให้ จากการวิจัยของฉันดูเหมือนว่าการสร้างSubject<IBaseFrame>จะให้สิ่งที่ฉันต้องการฉันจะมีเธรดเดียวของฉันที่อ่านข้อมูลจากอินเทอร์เฟซฮาร์ดแวร์แล้วเรียกใช้ฟังก์ชัน OnNext ของSubject<IBaseFrame>อินสแตนซ์ของฉัน ส่วนประกอบ IObserver ที่แตกต่างกันจะได้รับการแจ้งเตือนจากเรื่องนั้น ความสับสนของฉันมาจากคำแนะนำที่ให้ไว้ในภาคผนวกของบทช่วยสอนนี้ซึ่งระบุว่า: หลีกเลี่ยงการใช้ประเภทหัวเรื่อง Rx เป็นกระบวนทัศน์การเขียนโปรแกรมเชิงฟังก์ชันอย่างมีประสิทธิภาพ การใช้วิชาหมายความว่าตอนนี้เรากำลังจัดการสถานะซึ่งอาจกลายพันธุ์ได้ การจัดการกับสถานะการกลายพันธุ์และการเขียนโปรแกรมแบบอะซิงโครนัสในเวลาเดียวกันนั้นยากมากที่จะทำให้ถูกต้อง นอกจากนี้ตัวดำเนินการจำนวนมาก (วิธีการขยาย) ได้รับการเขียนอย่างรอบคอบเพื่อให้แน่ใจว่าอายุการใช้งานและลำดับการสมัครสมาชิกที่ถูกต้องและสม่ำเสมอ เมื่อคุณแนะนำวิชาคุณสามารถทำลายสิ่งนี้ได้ นอกจากนี้การเปิดตัวในอนาคตอาจทำให้ประสิทธิภาพลดลงอย่างมากหากคุณใช้วัตถุอย่างชัดเจน แอปพลิเคชันของฉันค่อนข้างสำคัญในด้านประสิทธิภาพฉันกำลังจะทดสอบประสิทธิภาพของการใช้รูปแบบ Rx ก่อนที่จะเข้าสู่รหัสการผลิต อย่างไรก็ตามฉันกังวลว่าฉันกำลังทำบางสิ่งที่ขัดต่อเจตนารมณ์ของเฟรมเวิร์ก Rx โดยใช้คลาส …

12
ฉันจะเปลี่ยนพอร์ต IIS Express สำหรับไซต์ได้อย่างไร
ฉันต้องการเปลี่ยนหมายเลขพอร์ตที่เว็บไซต์ของฉันทำงานในขณะที่แก้ไขข้อบกพร่องจาก Visual Studio ฉันใช้ Visual Studio 2012 และฉันใช้ ASP.NET MVC 4 สำหรับโปรเจ็กต์ของฉันฉันต้องการเปลี่ยนพอร์ต พอร์ตสุ่มหรือคงที่ทุกคนจะทำงานเพียงแค่ต้องการเปลี่ยนพอร์ต

2
จะรับเนื้อหาจากการโทร httpclient ได้อย่างไร
ฉันพยายามหาวิธีอ่านเนื้อหาของการโทร httpclient แล้ว แต่ดูเหมือนจะไม่เข้าใจ สถานะการตอบกลับที่ฉันได้รับคือ 200 แต่ฉันคิดไม่ออกว่าจะส่งคืน Json ที่แท้จริงได้อย่างไรซึ่งทั้งหมดที่ฉันต้องการ! ต่อไปนี้เป็นรหัสของฉัน: async Task<string> GetResponseString(string text) { var httpClient = new HttpClient(); var parameters = new Dictionary<string, string>(); parameters["text"] = text; Task<HttpResponseMessage> response = httpClient.PostAsync(BaseUri, new FormUrlEncodedContent(parameters)); return await response.Result.Content.ReadAsStringAsync(); } และฉันได้รับมันเพียงแค่เรียกมันจากวิธีการ: Task<string> result = GetResponseString(text); และนี่คือสิ่งที่ฉันได้รับ response Id = 89, Status …

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