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

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

4
อะไรคือความแตกต่างระหว่างรูปแบบการออกแบบ MVC, MVP และ MVVM ในแง่ของการเข้ารหัส c #
หากเราค้นหา Google โดยใช้วลี "อะไรคือความแตกต่างระหว่าง MVC, MVP และ MVVM รูปแบบการออกแบบ" จากนั้นเราอาจได้ URL ไม่กี่อันที่พูดถึงความแตกต่างระหว่างรูปแบบการออกแบบ MVC MVP และ MVVM ตามหลักเหตุผลเช่น : MVP ใช้ในสถานการณ์ที่ไม่สามารถผูกข้อมูลผ่าน datacontext ได้ Windows Forms เป็นตัวอย่างที่สมบูรณ์แบบของสิ่งนี้ ในการแยกมุมมองออกจากแบบจำลองจำเป็นต้องมีผู้นำเสนอ เนื่องจากมุมมองไม่สามารถเชื่อมโยงโดยตรงกับผู้นำเสนอได้จึงต้องส่งข้อมูลไปยังมุมมองผ่านอินเทอร์เฟซ (IView) MVVM ใช้ในสถานการณ์ที่ผูกพันผ่าน datacontext ได้ ทำไม? อินเทอร์เฟซ IView ต่าง ๆ สำหรับแต่ละมุมมองจะถูกเอาออกซึ่งหมายถึงรหัสน้อยกว่าเพื่อรักษา ตัวอย่างที่ MVVM มีความเป็นไปได้ ได้แก่ WPF และโปรเจ็กต์ javascript โดยใช้สิ่งที่น่าพิศวง MVC ใช้ในสถานการณ์ที่ไม่สามารถเชื่อมต่อระหว่างมุมมองและส่วนที่เหลือของโปรแกรมได้ (และคุณไม่สามารถใช้ MVVM …

21
มีวิธีง่ายๆในการสร้าง ordinals ใน C # หรือไม่?
มีวิธีที่ง่ายใน C # ในการสร้างOrdinalsสำหรับตัวเลขหรือไม่? ตัวอย่างเช่น: 1 ส่งคืนที่ 1 2 ส่งคืน 2nd 3 ส่งคืน 3 ... ฯลฯ สิ่งนี้สามารถทำได้ผ่านString.Format()หรือมีฟังก์ชั่นใด ๆ ที่สามารถทำได้?
202 c#  .net  ordinals 

14
จะตรวจสอบว่าวัตถุนั้นเป็นโมฆะได้อย่างไร?
ฉันจะตรวจสอบว่าวัตถุที่กำหนดเป็นโมฆะในคำอื่น ๆ วิธีการใช้วิธีการดังต่อไปนี้ ... bool IsNullableValueType(object o) { ... } แก้ไข: ฉันกำลังมองหาประเภทค่าที่เป็นโมฆะ ฉันไม่มีประเภทอ้างอิง //Note: This is just a sample. The code has been simplified //to fit in a post. public class BoolContainer { bool? myBool = true; } var bc = new BoolContainer(); const BindingFlags bindingFlags = BindingFlags.Public | BindingFlags.NonPublic …
202 c#  .net  nullable 

15
ปัญหาเกี่ยวกับการแปลง int เป็นสตริงใน Linq เป็นเอนทิตี
var items = from c in contacts select new ListItem { Value = c.ContactId, //Cannot implicitly convert type 'int' (ContactId) to 'string' (Value). Text = c.Name }; var items = from c in contacts select new ListItem { Value = c.ContactId.ToString(), //Throws exception: ToString is not supported in linq to …

20
ComboBox: การเพิ่มข้อความและความคุ้มค่าให้กับรายการ (ไม่มีแหล่งผูกพัน)
ใน C # WinApp ฉันจะเพิ่มทั้งข้อความและค่าในรายการ ComboBox ของฉันได้อย่างไร ฉันค้นหาแล้วมักจะใช้คำตอบ "ผูกกับแหล่งที่มา" .. แต่ในกรณีของฉันฉันไม่มีแหล่งรวมที่พร้อมในโปรแกรมของฉัน ... ฉันจะทำสิ่งนี้: combo1.Item[1] = "DisplayText"; combo1.Item[1].Value = "useful Value"
202 c#  winforms  combobox 

16
LINQ - เข้าร่วมเต็มด้านนอก
ฉันมีรายการ ID ของผู้คนและชื่อแรกของพวกเขาและรายการ ID ของผู้คนและนามสกุลของพวกเขา บางคนไม่มีชื่อและบางคนไม่มีนามสกุล ฉันต้องการเข้าร่วมเต็มรูปแบบภายนอกในสองรายการ ดังนั้นรายการต่อไปนี้: ID FirstName -- --------- 1 John 2 Sue ID LastName -- -------- 1 Doe 3 Smith ควรผลิต: ID FirstName LastName -- --------- -------- 1 John Doe 2 Sue 3 Smith ฉันใหม่กับ LINQ (โปรดยกโทษให้ฉันถ้าฉันเป็นคนอ่อนแอ) และพบวิธีแก้ปัญหาบางอย่างสำหรับ 'LINQ Outer Joins' ซึ่งทั้งหมดดูเหมือนกัน แต่ดูเหมือนจะถูกทิ้งไว้ด้านนอก ความพยายามของฉันจนถึงตอนนี้: private void …

6
ฉันจะสร้างไดเรกทอรีได้อย่างไรหากไม่มีอยู่ในการสร้างไฟล์
ฉันมีรหัสที่นี่ที่แบ่งหากไดเรกทอรีไม่อยู่: System.IO.File.WriteAllText(filePath, content); ในหนึ่งบรรทัด (หรือไม่กี่บรรทัด) เป็นไปได้หรือไม่ที่จะตรวจสอบว่าไดเรกทอรีที่นำไปสู่ไฟล์ใหม่ไม่มีอยู่หรือไม่และหากไม่ต้องการสร้างมันก่อนที่จะสร้างไฟล์ใหม่? ฉันใช้. NET 3.5
202 c#  .net  file-io 

4
รายการ Linq ของรายการไปยังรายการเดียว
ดูเหมือนว่านี่เป็นสิ่งที่จะได้รับคำตอบแล้ว แต่ฉันไม่พบมัน คำถามของฉันค่อนข้างง่ายฉันจะทำสิ่งนี้ได้อย่างไรในหนึ่งคำสั่งเพื่อให้ไม่ต้องมีรายการว่างใหม่จากนั้นรวมในบรรทัดถัดไปว่าฉันสามารถมีคำสั่ง linq เดียวที่แสดงรายการสุดท้ายของฉัน details คือรายการของแต่ละรายการที่มีรายการที่อยู่อาศัยฉันแค่ต้องการที่อยู่อาศัยทั้งหมดในรายการแบบเรียบ var residences = new List<DAL.AppForm_Residences>(); details.Select(d => d.AppForm_Residences).ToList().ForEach(d => residences.AddRange(d));
202 c#  linq 

15
วิธีใช้ลอง catch สำหรับการจัดการข้อยกเว้นเป็นวิธีปฏิบัติที่ดีที่สุด
ในขณะที่รักษารหัสของเพื่อนร่วมงานจากแม้กระทั่งคนที่อ้างว่าเป็นนักพัฒนาอาวุโสฉันมักจะเห็นรหัสต่อไปนี้: try { //do something } catch { //Do nothing } หรือบางครั้งพวกเขาเขียนข้อมูลการบันทึกลงในไฟล์บันทึกเช่นtry catchบล็อกต่อไปนี้ try { //do some work } catch(Exception exception) { WriteException2LogFile(exception); } ฉันแค่สงสัยว่าสิ่งที่พวกเขาทำเป็นแนวปฏิบัติที่ดีที่สุดหรือไม่? มันทำให้ฉันสับสนเพราะในความคิดของฉันผู้ใช้ควรรู้ว่าเกิดอะไรขึ้นกับระบบ โปรดให้คำแนะนำกับฉัน

10
การดำเนินการ C # bitwise ที่ใช้กันทั่วไปส่วนใหญ่
สำหรับชีวิตของฉันฉันจำไม่ได้ว่าจะตั้งลบสลับหรือทดสอบบิตในบิตฟิลด์ ฉันไม่แน่ใจหรือผสมกันเพราะฉันไม่ค่อยต้องการสิ่งเหล่านี้ ดังนั้น "บิตโกงแผ่น" น่าจะมี ตัวอย่างเช่น: flags = flags | FlagsEnum.Bit4; // Set bit 4. หรือ if ((flags & FlagsEnum.Bit4)) == FlagsEnum.Bit4) // Is there a less verbose way? คุณสามารถยกตัวอย่างการดำเนินงานทั่วไปอื่น ๆ ทั้งหมดโดยเฉพาะอย่างยิ่งในไวยากรณ์ C # โดยใช้ [Flags] enum หรือไม่

20
ทำไมจึงลอง {... } ในที่สุด {…} ดี ลอง {…} จับ {} ไม่ดีใช่ไหม
ฉันเคยเห็นคนพูดว่ามันเป็นรูปแบบที่ไม่ดีที่จะใช้ catch โดยไม่มีข้อโต้แย้งโดยเฉพาะถ้า catch นั้นไม่ได้ทำอะไร: StreamReader reader=new StreamReader("myfile.txt"); try { int i = 5 / 0; } catch // No args, so it will catch any exception {} reader.Close(); อย่างไรก็ตามนี่ถือว่าเป็นรูปแบบที่ดี: StreamReader reader=new StreamReader("myfile.txt"); try { int i = 5 / 0; } finally // Will execute despite any exception { …

24
ข้อผิดพลาดของการสร้าง VS2013 ภายนอก“ ข้อผิดพลาด MSB4019: ไม่พบโครงการที่นำเข้า <path>”
ฉันกำลังสร้างโครงการผ่านบรรทัดคำสั่งและไม่อยู่ใน Visual Studio 2013 หมายเหตุฉันได้อัพเกรดโครงการของฉันจาก Visual Studio 2012 เป็น 2013 โครงการนี้สร้างได้ดีภายใน IDE นอกจากนี้ฉันถอนการติดตั้งอย่างสมบูรณ์ VS2012 ก่อนรีบูตและติดตั้ง VS2013 Visual Studio รุ่นเดียวที่ฉันมีคือ 2013 Ultimate ValidateProjects: 39&gt;path_to_project.csproj(245,3): error MSB4019: The imported project "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\WebApplications\Microsoft.WebApplication.targets" was not found. Confirm that the path in the &lt;Import&gt; declaration is correct, and that the file exists on …

6
วิธีการเปิดใช้งานคุณสมบัติ C # 6.0 ใน Visual Studio 2013
ฉันกำลังใช้งานฟีเจอร์ล่าสุดที่แนะนำใน C # 6.0 และเพิ่งตามตัวอย่างของคุณสมบัติเริ่มต้นอัตโนมัติ class NewSample { public Guid Id { get; } = Guid.NewGuid(); } แต่ IDE ของฉันไม่รู้จักไวยากรณ์ ฉันสงสัยว่าฉันจะเปิดใช้งาน C # 6.0 ใน Visual Studio 2013 ได้อย่างไรกรอบเป้าหมายที่ฉันใช้คือ 4.5.1

3
SqlConnection จะเข้าร่วมใน TransactionScope Ambient โดยอัตโนมัติอย่างไร
SqlConnection มีความหมายว่าอะไร "เกณฑ์" ในการทำธุรกรรม? มันหมายความว่าคำสั่งที่ฉันใช้ในการเชื่อมต่อจะมีส่วนร่วมในการทำธุรกรรมหรือไม่? ถ้าเป็นเช่นนั้นภายใต้สถานการณ์ใด SqlConnection จะเข้าร่วมโดยอัตโนมัติในธุรกรรม TransactionScope แวดล้อม? ดูคำถามในความคิดเห็นของรหัส การเดาของฉันต่อคำตอบของคำถามแต่ละข้อนั้นตามด้วยคำถามแต่ละข้อในวงเล็บ สถานการณ์ที่ 1: การเปิดการเชื่อมต่อภายในขอบเขตการทำธุรกรรม using (TransactionScope scope = new TransactionScope()) using (SqlConnection conn = ConnectToDB()) { // Q1: Is connection automatically enlisted in transaction? (Yes?) // // Q2: If I open (and run commands on) a second connection now, …

7
วิเคราะห์ JSON ใน C #
ฉันกำลังพยายามวิเคราะห์ข้อมูล JSON จาก Google AJAX Search API ฉันมีURL นี้และฉันต้องการแยกย่อยเพื่อให้ผลลัพธ์ปรากฏขึ้น ขณะนี้ฉันได้เขียนโค้ดนี้แล้ว แต่ฉันก็ค่อนข้างหลงทางว่าจะทำอย่างไรต่อไปถึงแม้ว่าจะมีตัวอย่างจำนวนมากที่มาพร้อมกับสตริง JSON แบบง่าย ๆ การใหม่กับ C # และ. NET โดยทั่วไปฉันพยายามที่จะรับเอาท์พุทข้อความของแท้สำหรับหน้า ASP.NET ของฉันดังนั้นฉันถูกแนะนำให้ลอง JSON.NET ใครช่วยชี้ฉันในทิศทางที่ถูกต้องเพียงแค่เขียนโค้ดที่จะใช้ใน JSON จาก Google AJAX Search API แล้วพิมพ์ออกมาที่หน้าจอ แก้ไข: แก้ไขทั้งหมดแล้ว! ผลลัพธ์ทั้งหมดทำงานได้ดี ขอบคุณอีกครั้ง Dreas Grech! using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using …
201 c#  asp.net  json  parsing  json.net 

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