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

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

10
RichTextBox (WPF) ไม่มีคุณสมบัติสตริง“ Text”
ฉันพยายามตั้งค่า / รับข้อความของ RichTextBox ของฉัน แต่ Text ไม่ได้อยู่ในรายการคุณสมบัติเมื่อฉันต้องการรับการทดสอบข้อความ ... ฉันใช้รหัสที่อยู่เบื้องหลังใน C # (.net framework 3.5 SP1) RichTextBox test = new RichTextBox(); ไม่สามารถมีได้ test.Text(?) คุณรู้ไหมว่ามันเป็นไปได้อย่างไร?

6
กระบวนการ. NET เริ่มไดเร็กทอรีเริ่มต้น?
ฉันกำลังปิดแอปพลิเคชัน Java จากภายใน C # .NETแอปพลิเคชันคอนโซลใช้งานได้ดีในกรณีที่แอ็พพลิเคชัน Java ไม่สนใจว่าไดเร็กทอรี "default" คืออะไร แต่จะล้มเหลวสำหรับแอ็พพลิเคชัน Java ที่ค้นหาเฉพาะไดเร็กทอรีปัจจุบันสำหรับไฟล์สนับสนุน มีพารามิเตอร์กระบวนการที่สามารถตั้งค่าเพื่อระบุไดเร็กทอรีเริ่มต้นที่กระบวนการเริ่มต้นได้หรือไม่?
114 c# 

10
การสร้างเนื้อหาอีเมล HTML ใน C #
มีวิธีที่ดีกว่าในการสร้างอีเมล HTML ใน C # (สำหรับการส่งผ่าน System.Net.Mail) มากกว่าการใช้ Stringbuilder เพื่อทำสิ่งต่อไปนี้: string userName = "John Doe"; StringBuilder mailBody = new StringBuilder(); mailBody.AppendFormat("<h1>Heading Here</h1>"); mailBody.AppendFormat("Dear {0}," userName); mailBody.AppendFormat("<br />"); mailBody.AppendFormat("<p>First part of the email body goes here</p>"); และอื่น ๆ และอื่น ๆ?
114 c#  html  email 

4
ใช้ async / await อย่างมีประสิทธิภาพด้วย ASP.NET Web API
ฉันพยายามใช้async/awaitคุณสมบัติของ ASP.NET ในโครงการ Web API ของฉัน ฉันไม่แน่ใจมากนักว่าจะสร้างความแตกต่างในประสิทธิภาพของบริการ Web API ของฉันหรือไม่ โปรดดูขั้นตอนการทำงานและโค้ดตัวอย่างด้านล่างจากแอปพลิเคชันของฉัน ขั้นตอนการทำงาน: แอปพลิเคชัน UI →ปลายทาง Web API (ตัวควบคุม) →วิธีการโทรในชั้นบริการ Web API →เรียกใช้บริการเว็บภายนอกอื่น (ที่นี่เรามีการโต้ตอบฐานข้อมูล ฯลฯ ) ควบคุม: public async Task<IHttpActionResult> GetCountries() { var allCountrys = await CountryDataService.ReturnAllCountries(); if (allCountrys.Success) { return Ok(allCountrys.Domain); } return InternalServerError(); } ชั้นบริการ: public Task<BackOfficeResponse<List<Country>>> ReturnAllCountries() { …

3
จะประกาศการชุมนุมของเพื่อนได้อย่างไร?
ฉันมี 2 โครงการในโซลูชันของฉัน: แอสเซมบลี (ห้องสมุดพื้นฐาน) ชุดทดสอบ (NUnit) ฉันได้ประกาศชุดทดสอบเป็นชุดเพื่อนในโครงการแรก: [assembly: InternalsVisibleTo ("Company.Product.Tests")] ทุกอย่างทำงานได้ดีจนกระทั่งฉันรู้ว่าฉันลืมตั้งค่าโซลูชันเพื่อลงนามในชุดประกอบของฉัน ดังนั้นจึงสร้างไฟล์ snk และตั้งค่าโปรเจ็กต์ visual studio เพื่อลงนามในแอสเซมบลีแรก (Basic Library) ตอนนี้เมื่อฉันรวบรวมโปรเจ็กต์แรกฉันได้รับข้อผิดพลาดต่อไปนี้: ข้อมูลอ้างอิงการประกอบเพื่อน 'Company.Product.Tests' ไม่ถูกต้อง แอสเซมบลีที่เซ็นชื่อรัดกุมต้องระบุคีย์สาธารณะในการประกาศ InternalsVisibleTo ฉันพยายามแยกคีย์สาธารณะจากไฟล์ snk ของฉันโดยใช้ยูทิลิตี้ sn แต่มันสร้างไฟล์ไบนารีแบบมีสายซึ่งฉันไม่แน่ใจว่าจะใช้อย่างไร ฉันจะแก้ไขปัญหาได้อย่างไร?

4
ฉันควรคอมไพล์รุ่นที่มีข้อมูลการแก้ไขข้อบกพร่องเป็น "เต็ม" หรือ "เฉพาะ pdb"
ใน Visual Studio 2010 สำหรับโครงการ C # ถ้าคุณไปที่คุณสมบัติโครงการ> สร้าง> ขั้นสูง> ข้อมูลการดีบักคุณมีสามตัวเลือก: ไม่มีเต็มหรือเฉพาะ pdb จากคำตอบของคำถามนี้ฉันเชื่อว่าฉันเข้าใจความแตกต่างบางประการระหว่าง full และ pdb-only อย่างไรก็ตามแบบใดเหมาะสมกว่าสำหรับรุ่นรีลีส ถ้าฉันใช้ "เต็ม" จะมีการแบ่งประสิทธิภาพหรือไม่ ถ้าฉันใช้ "pdb-only" จะแก้ไขปัญหาการผลิตได้ยากขึ้นหรือไม่ "full" กับ "pdbonly" ต่างกันอย่างไร? https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/compiler-options/debug-compiler-option

9
ทำให้อักขระทั้งหมดอยู่ทางขวาของขีดสุดท้าย
ฉันมีสิ่งต่อไปนี้: string test = "9586-202-10072" ฉันจะทำให้อักขระทั้งหมดอยู่ทางขวาของลำดับสุดท้ายได้-อย่างไร 10072 จำนวนอักขระจะแตกต่างกันทางด้านขวาของขีดสุดท้ายเสมอ จะทำได้อย่างไร?
114 c# 

5
วิธีเขียนลง Console.Out ในระหว่างดำเนินการทดสอบ MSTest
บริบท: เรามีผู้ใช้บางรายรายงานปัญหาเกี่ยวกับคุณลักษณะการอัปโหลดไฟล์ในเว็บแอปพลิเคชันของเรา เกิดขึ้นเป็นครั้งคราวและไม่มีรูปแบบพิเศษใด ๆ เราพยายามคิดมานานแล้วโดยเพิ่มข้อมูลการดีบักทุกที่ที่คิดว่าอาจช่วยได้รวบรวมข้อมูลบันทึก ฯลฯ แต่เราไม่สามารถทำซ้ำหรือคิดออกได้ ปัญหา: ตอนนี้ฉันพยายามทำซ้ำโดยใช้ MSTest และ WatiN เพื่อทำซ้ำการดำเนินการที่ควรจะล้มเหลวเป็นจำนวนมาก (หลายร้อยครั้ง) เพื่อให้ได้เบาะแสว่าการทดสอบลูปไปได้ไกลแค่ไหนฉันต้องการพิมพ์สิ่งที่ชอบ: Console.WriteLine(String.Format("Uploaded file, attempt {0} of {1}", i, maxUploads)); อย่างไรก็ตามสิ่งนี้จะไม่ปรากฏในหน้าต่างผลลัพธ์ ตอนนี้ฉันรู้ว่าคุณจะได้รับผลคอนโซลในผลการทดสอบ (เช่นเดียวกับสิ่งที่คุณเอาท์พุทจากDebug.Writelineฯลฯ ) แต่นี้ไม่สามารถใช้ได้จนกว่าหลังการทดสอบเสร็จสิ้น และเนื่องจากการทดสอบของฉันกับการทำซ้ำหลายร้อยครั้งอาจใช้เวลาพอสมควรฉันจึงอยากรู้ว่ามันไปได้ไกลแค่ไหน คำถาม: มีวิธีใดบ้างที่ฉันจะได้รับเอาต์พุตคอนโซลในหน้าต่างเอาต์พุตระหว่างการดำเนินการทดสอบ
114 c#  console  mstest  watin 

4
จะสร้างสตริงที่มีความยาวหนึ่งเพื่อแทรกลงในไฟล์เพื่อให้ตรงตามเกณฑ์ขนาดไฟล์ได้อย่างไร?
ฉันมีความต้องการที่จะทดสอบปัญหาการโหลดบางอย่างเกี่ยวกับขนาดไฟล์ ฉันมีแอพพลิเคชั่น windows ที่เขียนด้วย C # ซึ่งจะสร้างไฟล์โดยอัตโนมัติ ฉันรู้ขนาดของแต่ละไฟล์เช่น 100KB และจำนวนไฟล์ที่จะสร้าง สิ่งที่ฉันต้องการความช่วยเหลือคือวิธีสร้างสตริงที่น้อยกว่าหรือเท่ากับขนาดไฟล์ที่ต้องการ รหัสหลอก: long fileSizeInKB = (1024 * 100); //100KB int numberOfFiles = 5; for(var i = 0; i < numberOfFiles - 1; i++) { var dataSize = fileSizeInKB; var buffer = new byte[dataSize]; using (var fs = new FileStream(File, FileMode.Create, …
114 c#  string  .net  operations 

4
การใช้นิพจน์แลมบ์ดาสำหรับตัวจัดการเหตุการณ์
ขณะนี้ฉันมีเพจที่ประกาศไว้ดังนี้: public partial class MyPage : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { //snip MyButton.Click += (o, i) => { //snip } } } ฉันเพิ่งย้ายไปที่. NET 3.5 จาก 1.1 ฉันจึงคุ้นเคยกับการเขียนตัวจัดการเหตุการณ์นอก Page_Load คำถามของฉันคือ; มีข้อบกพร่องด้านประสิทธิภาพหรือข้อผิดพลาดใด ๆ ที่ฉันควรระวังเมื่อใช้วิธีแลมบ์ดาสำหรับสิ่งนี้หรือไม่? ฉันชอบเพราะมันกระชับกว่า แต่ฉันไม่ต้องการเสียสละประสิทธิภาพเพื่อใช้มัน ขอบคุณ
114 c#  performance  events  lambda 

13
ฉันจะตรวจสอบ null ในโอเวอร์โหลดตัวดำเนินการ '==' โดยไม่มีการเรียกซ้ำแบบไม่สิ้นสุดได้อย่างไร
สิ่งต่อไปนี้จะทำให้เกิดการเรียกซ้ำแบบไม่สิ้นสุดในวิธีการโอเวอร์โหลดตัวดำเนินการ == Foo foo1 = null; Foo foo2 = new Foo(); Assert.IsFalse(foo1 == foo2); public static bool operator ==(Foo foo1, Foo foo2) { if (foo1 == null) return foo2 == null; return foo1.Equals(foo2); } ฉันจะตรวจสอบค่าว่างได้อย่างไร

12
เกิดการรั่วไหลของหน่วยความจำหาก MemoryStream ใน. NET ไม่ได้ปิด?
ฉันมีรหัสต่อไปนี้: MemoryStream foo(){ MemoryStream ms = new MemoryStream(); // write stuff to ms return ms; } void bar(){ MemoryStream ms2 = foo(); // do stuff with ms2 return; } มีโอกาสไหมที่ MemoryStream ที่ฉันจัดสรรไว้จะล้มเหลวในการกำจัดทิ้งในภายหลัง? ฉันได้รับการตรวจสอบจากเพื่อนโดยยืนยันว่าฉันปิดสิ่งนี้ด้วยตนเองและฉันไม่พบข้อมูลที่จะบอกได้ว่าเขามีประเด็นที่ถูกต้องหรือไม่

10
ไม่มีเอาต์พุตไปยังคอนโซลจากแอปพลิเคชัน WPF?
ฉันใช้ Console.WriteLine () จากแอปพลิเคชันทดสอบ WPF ที่เรียบง่าย แต่เมื่อฉันเรียกใช้แอปพลิเคชันจากบรรทัดคำสั่งฉันไม่เห็นสิ่งใดถูกเขียนลงในคอนโซล ไม่มีใครรู้ว่าเกิดอะไรขึ้นที่นี่? ฉันสามารถสร้างซ้ำได้โดยสร้างแอปพลิเคชัน WPF ใน VS 2008 และเพิ่ม Console.WriteLine ("text") ที่ใดก็ได้ที่ดำเนินการ ความคิดใด ๆ ? สิ่งที่ฉันต้องการในตอนนี้มีเพียงแค่ Console.WriteLine () ฉันรู้ว่าฉันสามารถใช้ log4net หรือโซลูชันการบันทึกอื่น ๆ ได้ แต่ฉันไม่ต้องการฟังก์ชันมากขนาดนั้นสำหรับแอปพลิเคชันนี้ แก้ไข:ฉันควรจำไว้ว่า Console.WriteLine () ใช้สำหรับแอปพลิเคชันคอนโซล ดีไม่มีคำถามโง่ ๆ ใช่มั้ย? :-) ฉันจะใช้ System.Diagnostics.Trace.WriteLine () และ DebugView ในตอนนี้
114 c#  .net  wpf  console 

4
วิธีสร้างคำขอรับเว็บ http อย่างถูกต้อง
ฉันยังใหม่ใน c # และฉันกำลังพยายามสร้างแอปพลิเคชันสำหรับเพจนี้ซึ่งจะแจ้งให้ฉันทราบเมื่อฉันได้รับการแจ้งเตือน (ตอบแสดงความคิดเห็น ฯลฯ ... ) แต่ตอนนี้ฉันแค่พยายามโทรไปที่ api ง่ายๆซึ่งจะได้รับข้อมูลของผู้ใช้ ฉันใช้ Visual studio express 2012 เพื่อสร้างแอปพลิเคชัน C # โดยที่ (ตอนนี้) คุณป้อนรหัสผู้ใช้ของคุณดังนั้นแอปพลิเคชันจะส่งคำขอด้วยรหัสผู้ใช้และแสดงสถิติของรหัสผู้ใช้นี้ นี่คือรหัสที่ฉันพยายามส่งคำขอ: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; //Request library using System.Net; using System.IO; namespace TestApplication { class Connect { public string id; public string …
114 c#  .net  httpwebrequest 

3
การแก้ไขสตริงเทียบกับสตริงรูปแบบ
มีความแตกต่างของประสิทธิภาพที่สังเกตได้ระหว่างการใช้การแก้ไขสตริง: myString += $"{x:x2}"; เทียบกับ String.Format ()? myString += String.Format("{0:x2}", x); ฉันแค่ถามเพราะ Resharper กำลังแจ้งการแก้ไขและฉันเคยโดนหลอกมาก่อน

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