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

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

9
วิธีที่ดีที่สุดในการทดสอบข้อยกเว้นด้วย Assert เพื่อให้แน่ใจว่าจะถูกโยนทิ้ง
คุณคิดว่านี่เป็นวิธีที่ดีสำหรับการทดสอบข้อยกเว้นหรือไม่? ข้อเสนอแนะใด ๆ ? Exception exception = null; try{ //I m sure that an exeption will happen here } catch (Exception ex){ exception = ex; } Assert.IsNotNull(exception); ฉันใช้ MS Test
99 c#  .net  unit-testing 

6
GetProperties () เพื่อส่งคืนคุณสมบัติทั้งหมดสำหรับลำดับชั้นการสืบทอดอินเทอร์เฟซ
สมมติว่าลำดับชั้นการสืบทอดสมมุติฐานดังต่อไปนี้: public interface IA { int ID { get; set; } } public interface IB : IA { string Name { get; set; } } ใช้การสะท้อนและการโทรต่อไปนี้: typeof(IB).GetProperties(BindingFlags.Public | BindingFlags.Instance) จะให้เฉพาะคุณสมบัติของอินเทอร์เฟซIBซึ่งก็คือ " Name" หากเราจะทำการทดสอบที่คล้ายกันกับรหัสต่อไปนี้ public abstract class A { public int ID { get; set; } } public class B : …
99 c#  .net  reflection 

5
ใช้แอ็ตทริบิวต์ XmlInclude หรือ SoapInclude เพื่อระบุชนิดที่ไม่รู้จักแบบคงที่
ผมเคยมีปัญหาแปลกมากเมื่อทำงานกับ XmlSerializer.NET เรียนตามตัวอย่างต่อไปนี้: public class Order { public PaymentCollection Payments { get; set; } //everything else is serializable (including other collections of non-abstract types) } public class PaymentCollection : Collection<Payment> { } public abstract class Payment { //abstract methods } public class BankPayment : Payment { //method implementations } AFAIK …
99 c#  .net  xml  xmlserializer 

3
การเข้าถึง UI (Main) เธรดอย่างปลอดภัยใน WPF
ฉันมีแอปพลิเคชันที่อัปเดตดาต้ากริดของฉันทุกครั้งที่ไฟล์บันทึกที่ฉันกำลังดูได้รับการอัปเดต (ต่อท้ายด้วยข้อความใหม่) ในลักษณะต่อไปนี้: private void DGAddRow(string name, FunctionType ft) { ASCIIEncoding ascii = new ASCIIEncoding(); CommDGDataSource ds = new CommDGDataSource(); int position = 0; string[] data_split = ft.Data.Split(' '); foreach (AttributeType at in ft.Types) { if (at.IsAddress) { ds.Source = HexString2Ascii(data_split[position]); ds.Destination = HexString2Ascii(data_split[position+1]); break; } else { position += …

5
ฉันจะรับ Url Referrer ใน ASP.NET Core MVC ได้อย่างไร
ฉันพยายามย้ายเว็บฟอร์ม ASP.NET MVC ไปยัง ASP.NET Core MVC ขณะนี้ฉันมีปัญหากับRequest.UrlReferrerชั้นเรียน บรรทัดเดิมคือ: [HttpPost] public async Task<ActionResult> ContactUsFormSubmit(ContactUs request) { var siteUrl = Request.UrlReferrer.ToString().ToLower(); .... } อย่างไรก็ตามด้วย ASP.NET Core จะไม่สามารถใช้ UrlReferrer ได้ ฉันพบสิ่งต่อไปนี้: Request.Headers["Referer"] ซึ่งส่งคืน StringValues ​​แทน String ฉันไม่แน่ใจว่าควรลองใช้อันนี้หรือมีวิธีแก้ไขอื่น ๆ สำหรับสถานการณ์นี้หรือไม่ Request.ServerVariablesยังใช้ไม่ได้หรือบางทีฉันอาจไม่มีเนมสเปซ เนมสเปซของฉันมีดังนี้: using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; using …


6
อัปเดตบริการเว็บ. NET เพื่อใช้ TLS 1.2
ฉันจำเป็นต้องใช้ TLS 1.2 เพื่อเชื่อมต่อจากบริการเว็บ. NET ของฉันไปยังบริการอื่นที่จะบังคับใช้ TLS 1.2 ฉันพบแหล่งข้อมูลที่ระบุว่า. NET 4.6 ใช้ TLS 1.2 เป็นค่าเริ่มต้นซึ่งดูเหมือนจะเป็นวิธีแก้ปัญหาที่ง่ายที่สุด ฉันอัพเดต. NET framework บนเซิร์ฟเวอร์และรีสตาร์ท ใน IIS ฉันพยายามสร้างแอปพลิเคชันพูลโดยใช้. NET 4.6 แต่ 4.0 เป็นตัวเลือกเดียว จากนั้นฉันพบบางสิ่งที่บอกว่ามันยังคงเป็น 4.0 เพราะ 4.6 เป็นการอัปเดต "ในสถานที่" เป็น. NET 4.0 ดังนั้นฉันคิดว่าบางทีฉันอาจจะเสร็จแล้ว อย่างไรก็ตามในหน้าแสดงข้อผิดพลาดที่ฉันได้รับด้วยเหตุผลที่ไม่เกี่ยวข้องมันบอกMicrosoft .NET Framework Version:4.0.30319ว่าฉันอัปเกรดไม่สำเร็จ คำแนะนำใด ๆ เกี่ยวกับวิธีตรวจสอบให้แน่ใจว่าพูลแอปพลิเคชันของฉันใช้. NET 4.6 หรือมากกว่านั้นโดยทั่วไปจะเปิดใช้งาน TLS 1.2 ได้อย่างไร
99 c#  .net  tls1.2 

6
กำหนดเป้าหมายโครงการทั้งหมดใหม่ในโซลูชันเป็น. NET 4.5.2
ฉันมีโซลูชันใน Visual Studio 2012 ที่มี 170 โครงการ C # อยู่ในนั้น ฉันต้องการกำหนดเป้าหมายโครงการทั้งหมดใหม่จาก. NET Framework 4.0 เป็น 4.5.2 ฉันต้องการให้ Visual Studio จัดการสิ่งนี้โดยเข้าไปที่คุณสมบัติของแต่ละโปรเจ็กต์เปลี่ยนเฟรมเวิร์กเป้าหมายและให้ Visual Studio ทำการเปลี่ยนแปลงที่จำเป็นกับไฟล์. csproj ฉันสังเกตเห็นว่าการเปลี่ยนแปลงเหล่านี้รวมถึงการเพิ่มแท็ก XML ใหม่สองสามรายการใน. csproj ซึ่งขึ้นอยู่กับคุณลักษณะบางอย่างของโครงการปัจจุบัน ฉันจะกำหนดเป้าหมายโปรเจ็กต์ C # ทั้งหมด 170 โครงการโดยไม่ต้องใช้เครื่องมือแทนที่ข้อความเพื่อแทนที่หมายเลขเวอร์ชันเป้าหมายได้อย่างไร ฉันต้องการให้ Visual Studio ทำการแก้ไขและเพิ่มเติมแท็กที่จำเป็นทั้งหมดและแทนที่เพียงอย่างเดียวจะไม่อนุญาตให้เกิดขึ้น

5
สร้างภาพขนาดย่อ
ฉันต้องการแสดงภาพขนาดย่อในมุมมองตารางจากตำแหน่งไฟล์ จะสร้าง.jpegไฟล์ได้อย่างไร? ฉันใช้C#ภาษากับasp.net.

16
วิธีหลีกเลี่ยงการตอบกลับ End () ข้อยกเว้น“ เธรดถูกยกเลิก” ระหว่างการดาวน์โหลดไฟล์ Excel
ฉันพยายามแปลงชุดข้อมูลของฉันเป็น excel และดาวน์โหลด excel นั้นฉันได้รับไฟล์ excel ที่ต้องการ แต่ System.Threading.ThreadAbortException ถูกเพิ่มขึ้นทุกการดาวน์โหลด excel จะแก้ไขปัญหานี้อย่างไร? .. โปรดช่วยฉันด้วย ... ฉันเรียกวิธีนี้ในหน้าจอ aspx ของฉันนอกจากนี้ยังมีข้อยกเว้นเช่นเดียวกันกับวิธีนี้ ฉันเรียกมันว่าฟังก์ชัน ExportDataSet (DataSet ds) ที่เป็นโมฆะสาธารณะในหลาย ๆ หน้าจอ aspx และฉันยังคงรักษาวิธีการบันทึกข้อผิดพลาดสำหรับข้อยกเว้นที่เพิ่มขึ้นในรันไทม์ที่ถูกต้องข้อยกเว้นเหล่านั้นจะถูกเขียนลงในไฟล์. txt ดังนั้นข้อยกเว้นเดียวกันนี้จึงถูกบันทึกในไฟล์ txt ของหน้าจอ aspx ทั้งหมดฉันแค่ต้องการหลีกเลี่ยงข้อยกเว้นนี้ที่โยนจากไฟล์คลาสที่ประกาศไปยังวิธี aspx ฉันแค่ต้องการจัดการข้อยกเว้นนี้ที่ไฟล์คลาสการประกาศเมธอดของฉันเอง ASPX File Method เรียก: excel.ExportDataSet (dsExcel); นิยามวิธีการ: public void ExportDataSet(DataSet ds) { try { string …
99 c#  asp.net 

12
วิธีสร้างแอปพลิเคชัน OOP ที่สมบูรณ์แบบ [ปิด]
ปิด . คำถามนี้เป็นคำถามความคิดเห็นตาม ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบได้ด้วยข้อเท็จจริงและการอ้างอิงโดยแก้ไขโพสต์นี้ ปิด6 เดือนที่แล้ว . ปรับปรุงคำถามนี้ เมื่อเร็ว ๆ นี้ฉันกำลังพยายามหา บริษัท 'x' พวกเขาส่งชุดคำถามมาให้ฉันและบอกให้ฉันแก้เพียงข้อเดียว ปัญหาเป็นเช่นนี้ - ภาษีการขายขั้นพื้นฐานมีผลในอัตรา 10% สำหรับสินค้าทั้งหมดยกเว้นหนังสืออาหารและผลิตภัณฑ์ทางการแพทย์ที่ได้รับการยกเว้น อากรขาเข้าคือภาษีขายเพิ่มเติมที่ใช้กับสินค้านำเข้าทั้งหมดในอัตรา 5% โดยไม่มีข้อยกเว้น เมื่อฉันซื้อสินค้าฉันจะได้รับใบเสร็จรับเงินซึ่งแสดงชื่อของสินค้าทั้งหมดและราคา (รวมภาษี) จบด้วยต้นทุนรวมของสินค้าและจำนวนภาษีขายทั้งหมดที่จ่าย กฎการปัดเศษสำหรับภาษีขายคือสำหรับอัตราภาษี n% ราคาชั้นวางของ p จะมีจำนวน (np / 100 ปัดเศษขึ้นเป็น 0.05 ที่ใกล้ที่สุด) “ พวกเขาบอกฉันว่าพวกเขาสนใจในด้านการออกแบบของโซลูชันของคุณและต้องการประเมินทักษะการเขียนโปรแกรมเชิงวัตถุของฉัน” นี่คือสิ่งที่พวกเขาบอกด้วยคำพูดของพวกเขาเอง สำหรับวิธีแก้ปัญหาเราต้องการให้คุณใช้ Java, Ruby หรือ C # เรามีความสนใจในด้านการออกแบบของการแก้ปัญหาของคุณและต้องการที่จะประเมินผลการศึกษาของคุณObject Oriented ทักษะการเขียนโปรแกรม …
98 c#  oop 

5
เธรดการเปลี่ยนสลีปใน. NET สำหรับ Windows Store
Thread.Sleepดูเหมือนจะไม่รองรับในแอพ. NET สำหรับ Windows Store ตัวอย่างเช่นนี้ System.Threading.Thread.Sleep(1000); จะคอมไพล์เมื่อกำหนดเป้าหมาย. NET Framework ใด ๆ (2.0, 3.5, 4.0, 4.5) แต่ไม่ใช่เมื่อกำหนดเป้าหมาย. NET สำหรับแอป Windows Store (หรือในไลบรารีคลาสแบบพกพาซึ่งกำหนดเป้าหมายทั้ง 4.5 และที่จัดเก็บ) System.Threading ยังคงมีเธรดอยู่ แต่ก็ไม่มีเมธอด Sleep ฉันต้องการหน่วงเวลาบางอย่างในแอปของฉันสักสองสามวินาทีมีการทดแทนที่เหมาะสมหรือไม่ แก้ไขสาเหตุที่จำเป็นต้องมีการหน่วงเวลา: แอปของฉันเป็นเกมและความล่าช้าคือการทำให้ดูเหมือนว่าฝ่ายตรงข้ามคอมพิวเตอร์กำลัง "คิด" เกี่ยวกับการเคลื่อนไหวครั้งต่อไปของเขา วิธีนี้เรียกว่าแบบอะซิงโครนัสแล้ว (เธรดหลักไม่ได้ถูกบล็อก) ฉันแค่ต้องการชะลอเวลาตอบสนอง

10
ฉันจะให้ตัวออกแบบฟอร์ม Windows ของ Visual Studio 2008 แสดงผลแบบฟอร์มที่ใช้คลาสฐานนามธรรมได้อย่างไร
ฉันมีปัญหากับการควบคุมที่สืบทอดมาใน Windows Forms และต้องการคำแนะนำ ฉันใช้คลาสพื้นฐานสำหรับรายการในรายการ (รายการ GUI ที่สร้างขึ้นเองจากแผงควบคุม) และตัวควบคุมที่สืบทอดมาสำหรับข้อมูลแต่ละประเภทที่สามารถเพิ่มลงในรายการได้ ไม่มีปัญหากับมัน แต่ตอนนี้ฉันพบแล้วว่ามันจะถูกต้องที่จะทำให้การควบคุมพื้นฐานเป็นคลาสนามธรรมเนื่องจากมีวิธีการที่ต้องนำไปใช้ในการควบคุมที่สืบทอดมาทั้งหมดเรียกจากโค้ดภายใน ฐานควบคุม แต่ต้องไม่และไม่สามารถนำไปใช้ในคลาสพื้นฐานได้ เมื่อฉันทำเครื่องหมายการควบคุมพื้นฐานเป็นนามธรรม Visual Studio 2008 Designer ปฏิเสธที่จะโหลดหน้าต่าง มีวิธีทำให้นักออกแบบทำงานร่วมกับบทคัดย่อที่สร้างฐานควบคุมหรือไม่?

3
ทำไมต้องสร้างโปรเจ็กต์ ASP.NET 5 Class Library
ฉันกำลังพยายามหาว่า "ASP.NET 5 Class Library" (vNext) C # โปรเจ็กต์เกี่ยวข้องกับ ASP.NET อย่างไร เหตุใดจึงต้องสร้างโปรเจ็กต์ด้วยเทมเพลตนี้แทนที่จะสร้างโปรเจ็กต์ C # "Class Library" แบบปกติ ฉันชอบคุณสมบัติใหม่เช่นไฟล์ project.json มากกว่าไฟล์. csproj เป็นต้น แต่ดูเหมือนจะไม่ถูกต้องที่จะสร้างไลบรารีคลาส "ASP.NET" เมื่อโปรเจ็กต์ไม่มีส่วนเกี่ยวข้องกับ ASP.NET หรือ IIS เป็นต้น . เป็นเพียงโครงการสำหรับชั้นตรรกะทางธุรกิจ ในที่สุดเว็บไซต์ WebApi ASP.NET ใหม่จะอ้างอิงโครงการนี้ แต่ไม่เกี่ยวข้องในตอนนี้ แค่ชื่อไม่ดี? ควรเรียกว่า "vNext Class Library" และไม่ใช้ไอคอนที่ดูเหมือนเว็บแอปหรือไม่

7
พจนานุกรมแบบสองทิศทาง 1 ถึง 1 ใน C #
ฉันกำลังมองหาคลาส Dictionary 1 ถึง 1 แบบทั่วไปแบบสองทิศทางใน C # (2) เช่น BiDictionaryOneToOne<T, S>ซึ่งรับประกันได้ว่าจะมีเพียงหนึ่งในแต่ละค่าและสำคัญ (ถึง RefEquals อยู่แล้ว) และที่สามารถค้นหาได้โดยใช้ปุ่มหรือค่า มีใครรู้บ้างหรือฉันควรใช้มันเอง ไม่อยากจะเชื่อเลยว่าฉันเป็นคนแรกที่ต้องการสิ่งนี้ ... มี BiDictionary ในคำตอบสำหรับคำถามนี้แต่ไม่ใช่สำหรับองค์ประกอบที่ไม่ซ้ำใคร (และยังไม่ใช้ RemoveByFirst (T t) หรือ RemoveBySecond (S s)) ขอบคุณ!
98 c#  .net  collections 

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