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

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

15
การเรียก webapi ที่ไม่ได้รับอนุญาตส่งคืนหน้าเข้าสู่ระบบแทน 401
ฉันจะกำหนดค่าโครงการ mvc / webapi ของฉันอย่างไรเพื่อให้วิธีการ webapi ที่เรียกจากมุมมองมีดโกนไม่ส่งคืนหน้าล็อกอินเมื่อไม่ได้รับอนุญาต มันเป็นแอปพลิเคชั่น MVC5 ซึ่งมีตัวควบคุม WebApi สำหรับการโทรผ่าน javascript ทั้งสองวิธีด้านล่าง [Route("api/home/LatestProblems")] [HttpGet()] public List<vmLatestProblems> LatestProblems() { // Something here } [Route("api/home/myLatestProblems")] [HttpGet()] [Authorize(Roles = "Member")] public List<vmLatestProblems> mylatestproblems() { // Something there } ถูกเรียกผ่านรหัสเชิงมุมดังต่อไปนี้: angular.module('appWorship').controller('latest', ['$scope', '$http', function ($scope,$http) { var urlBase = baseurl + '/api/home/LatestProblems'; …


10
วิธีลบอักขระบรรทัดใหม่ออกจากสตริงได้อย่างไร
ฉันมีสตริงในรูปแบบต่อไปนี้ string s = "This is a Test String.\n This is a next line.\t This is a tab.\n' ฉันต้องการลบสิ่งที่เกิดขึ้นทั้งหมด\nและ\rจากสตริงด้านบน ฉันลองแล้วstring s = s.Trim(new char[] {'\n', '\r'});แต่ก็ไม่ได้ช่วยอะไร
181 c#  .net 

5
ฉันจะแปลงรหัส foreach นี้เป็น Parallel.ForEach ได้อย่างไร
ฉันสับสนParallel.ForEachเล็กน้อย มันคืออะไรParallel.ForEachและมันทำอะไรกันแน่? โปรดอย่าอ้างอิงลิงก์ MSDN ใด ๆ นี่คือตัวอย่างง่ายๆ: string[] lines = File.ReadAllLines(txtProxyListPath.Text); List<string> list_lines = new List<string>(lines); foreach (string line in list_lines) { //My Stuff } ฉันจะเขียนตัวอย่างนี้อีกครั้งได้Parallel.ForEachอย่างไร

10
คลาสไดอะแกรมใน VS 2017
ฉันใช้ VS 2015 และชอบรายการ Class Diagram ฉันเพิ่งอัปเกรดเป็น 2560 และดูเหมือนไม่พบรายการ Class Diagram ใครรู้ว่าฉันไปถึงมันได้อย่างไร

4
เขียนสตริงลงในไฟล์ข้อความและตรวจสอบให้แน่ใจว่ามันเขียนทับเนื้อหาที่มีอยู่เสมอ
ฉันมีสตริงพร้อมโปรแกรม C # ที่ฉันต้องการเขียนไปยังไฟล์และเขียนทับเนื้อหาที่มีอยู่เสมอ หากไฟล์ไม่มีโปรแกรมควรสร้างไฟล์ใหม่แทนที่จะทิ้งข้อยกเว้น
180 c#  file  text 

9
อะไรคือความแตกต่างระหว่าง == และ Equals () สำหรับ primitives ใน C #?
พิจารณารหัสนี้: int age = 25; short newAge = 25; Console.WriteLine(age == newAge); //true Console.WriteLine(newAge.Equals(age)); //false Console.ReadLine(); ทั้งสองintและshortเป็นประเภทดั้งเดิม แต่การเปรียบเทียบกับ==ผลตอบแทนจริงและเปรียบเทียบกับEqualsผลตอบแทนที่เป็นเท็จ ทำไม?
180 c#  compare 

18
ทดสอบว่าสายอักขระนั้นเป็น guid หรือไม่โดยไม่ทิ้งข้อยกเว้น?
ฉันต้องการลองแปลงสตริงเป็น Guid แต่ฉันไม่ต้องการพึ่งพาข้อยกเว้น ( สำหรับเหตุผลด้านประสิทธิภาพ - ข้อยกเว้นมีราคาแพง สำหรับเหตุผลในการใช้งาน - โปรแกรมดีบั๊กจะปรากฏขึ้น สำหรับเหตุผลด้านการออกแบบ - ความคาดหวังนั้นไม่โดดเด่น ในคำอื่น ๆ รหัส: public static Boolean TryStrToGuid(String s, out Guid value) { try { value = new Guid(s); return true; } catch (FormatException) { value = Guid.Empty; return false; } } ไม่เหมาะ ฉันจะลองใช้ RegEx แต่เนื่องจาก guid สามารถเป็นวงเล็บปิดวงเล็บปีกกาห่อหุ้มห่อไม่ทำให้มันยาก …
180 c#  string  parsing  guid 

11
Visual Studio C # งบยุบ
เมื่อทำการแก้ไขบล็อคโค้ดที่มีความยาวมาก ๆ (ซึ่งแน่นอนว่าควรจะถูกนำกลับมาใช้ใหม่ แต่นั่นก็ไม่ได้อยู่ในขอบเขตของคำถามนี้) ฉันมักจะต้องใช้ความสามารถในการยุบบล็อกคำสั่งอย่างใดอย่างหนึ่ง กล่าวคือจะเป็นการดีถ้าไอคอนเครื่องหมายลบปรากฏบนโครงร่างโค้ดของทุกสิ่งที่อยู่ในเครื่องหมายปีกกา ดูเหมือนว่าจะปรากฏขึ้นสำหรับฟังก์ชั่น, คลาส, ภูมิภาค, เนมสเปซ, การใช้งาน แต่ไม่ใช่สำหรับบล็อกแบบมีเงื่อนไขหรือซ้ำ มันจะยอดเยี่ยมถ้าฉันสามารถยุบสิ่งต่าง ๆ เช่น ifs สวิตช์ foreaches สิ่งนั้น Googling เป็นบิตฉันพบว่าการสรุป C ++ ใน VS ช่วยให้ทำได้ แต่ C # การสรุปใน VS ไม่ได้ ฉันไม่เข้าใจว่าทำไม แม้ notepad ++ จะยุบดังนั้นถ้าฉันเลือกการจัดรูปแบบ C # ดังนั้นฉันไม่เข้าใจว่าทำไม Visual Studio ไม่ ไม่มีใครรู้เกี่ยวกับ Add-in VS2008 ที่จะเปิดใช้งานลักษณะการทำงานนี้หรือไม่ หรือการตั้งค่าแบบซ่อนเร้นสำหรับมัน แก้ไขเพื่อเพิ่ม: การแทรกเขตเป็นตัวเลือกแน่นอนและมันก็เกิดขึ้นกับฉันแล้ว …

6
เมื่อใดที่“ ลอง” ควรจะใช้ในชื่อเมธอด C #
เรากำลังพูดคุยกับเพื่อนร่วมงานของเราเกี่ยวกับความหมายว่าถ้าชื่อวิธีการขึ้นต้นด้วย "ลอง" มีความคิดเห็นดังต่อไปนี้: ใช้ "ลอง" เมื่อวิธีสามารถคืนค่าเป็นศูนย์ได้ ใช้ "ลอง" เมื่อวิธีการจะไม่เกิดข้อยกเว้น คำจำกัดความอย่างเป็นทางการคืออะไร "ลอง" พูดในชื่อวิธีการอะไร? มีแนวทางที่เป็นทางการเกี่ยวกับเรื่องนี้หรือไม่?

20
นำเข้าและส่งออก Excel - ห้องสมุดที่ดีที่สุดคืออะไร [ปิด]
ปิด. คำถามนี้ไม่เป็นไปตามหลักเกณฑ์กองมากเกิน ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน6 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ในหนึ่งในแอปพลิเคชัน ASP.NET ของเราใน C # เราใช้การรวบรวมข้อมูลบางอย่าง (คอลเลกชัน SubSonic) และส่งออกไปยัง Excel นอกจากนี้เรายังต้องการนำเข้าไฟล์ Excel ในรูปแบบเฉพาะ ฉันกำลังมองหาห้องสมุดที่ฉันสามารถใช้เพื่อจุดประสงค์นี้ ที่ต้องการ: ไฟล์ Excel 2007 (Excel 2003 รองรับแถว 64k หรือไม่ฉันต้องการมากกว่านั้น) ไม่ต้องการ Excel บนเซิร์ฟเวอร์ ใช้คอลเล็กชันที่พิมพ์และถ้าเป็นไปได้พยายามใส่เขตข้อมูลตัวเลขเป็นตัวเลขใน Excel ทำงานได้ดีกับไฟล์ขนาดใหญ่ (100k ถึง 10M) - เร็วพอ ไม่ผิดพลาดเมื่อส่งออก GUID! ไม่ต้องเสียเงินจำนวนมาก (ไม่มีไลบรารี่ขององค์กรเหมือน aspose) ฟรียอดเยี่ยมอยู่เสมอ …

14
แปลงสตริง XML เป็นวัตถุ
ฉันได้รับสตริง XML ผ่านซ็อกเก็ตและต้องการแปลงเป็นวัตถุ C # ข้อความมีรูปแบบ: <msg> <id>1</id> <action>stop</action> </msg> ฉันใหม่กับ. Net และไม่แน่ใจว่าวิธีปฏิบัติที่ดีที่สุดสำหรับการดำเนินการนี้ ฉันเคยใช้ JAXB สำหรับ Java มาก่อนและไม่แน่ใจว่ามีอะไรที่คล้ายกันหรือว่าจะจัดการในลักษณะที่แตกต่างออกไป

3
ใช้ Moq เพื่อจำลองวิธีอะซิงโครนัสสำหรับการทดสอบหน่วย
ฉันกำลังทดสอบวิธีการสำหรับบริการที่APIโทรผ่านเว็บ ใช้HttpClientงานปกติได้ดีสำหรับการทดสอบหน่วยถ้าฉันยังเรียกใช้บริการเว็บ (อยู่ในโครงการอื่นในการแก้ปัญหา) ในพื้นที่ อย่างไรก็ตามเมื่อฉันเช็คอินการเปลี่ยนแปลงของฉันเซิร์ฟเวอร์บิลด์จะไม่สามารถเข้าถึงบริการเว็บดังนั้นการทดสอบจะล้มเหลว ฉันได้คิดค้นวิธีนี้สำหรับการทดสอบหน่วยของฉันโดยการสร้างIHttpClientอินเทอร์เฟซและใช้เวอร์ชันที่ฉันใช้ในแอปพลิเคชันของฉัน สำหรับการทดสอบหน่วยฉันสร้างเวอร์ชันที่เยาะเย้ยโดยใช้วิธีการโพสต์แบบอะซิงโครนัสที่เยาะเย้ย ที่นี่ฉันมีปัญหา ฉันต้องการส่งคืนตกลงHttpStatusResultสำหรับการทดสอบนี้โดยเฉพาะ สำหรับการทดสอบอื่นที่คล้ายคลึงกันฉันจะคืนผลลัพธ์ที่ไม่ดี การทดสอบจะทำงาน แต่จะไม่เสร็จสมบูรณ์ มันค้างที่รอ ฉันยังใหม่กับการเขียนโปรแกรมแบบอะซิงโครนัสผู้ได้รับมอบหมายและขั้นต่ำและฉันค้นหา SO และ google มาระยะหนึ่งเพื่อเรียนรู้สิ่งใหม่ แต่ฉันก็ยังดูเหมือนจะไม่สามารถผ่านพ้นปัญหานี้ได้ นี่คือวิธีที่ฉันพยายามทดสอบ: public async Task<bool> QueueNotificationAsync(IHttpClient client, Email email) { // do stuff try { // The test hangs here, never returning HttpResponseMessage response = await client.PostAsync(uri, content); // more logic here …

8
นำเนื้อหาในวัตถุ HttpResponseMessage หรือไม่
เมื่อหลายเดือนก่อน Microsoft ตัดสินใจเปลี่ยนคลาส HttpResponseMessage ก่อนหน้านี้คุณสามารถส่งประเภทข้อมูลไปยังตัวสร้างจากนั้นส่งคืนข้อความด้วยข้อมูลนั้น แต่ไม่ใช่อีกต่อไป ตอนนี้คุณต้องใช้คุณสมบัติเนื้อหาเพื่อตั้งค่าเนื้อหาของข้อความ ปัญหาคือมันเป็นประเภท HttpContent และฉันไม่สามารถหาวิธีแปลงสตริงได้เป็น HttpContent ไม่มีใครรู้วิธีจัดการกับปัญหานี้หรือไม่? ขอบคุณมาก.

12
ควรใช้ IList เมื่อใดและเมื่อใดควรใช้รายการ
ฉันรู้ว่า IList เป็นอินเทอร์เฟซและรายการเป็นประเภทที่เป็นรูปธรรม แต่ฉันก็ยังไม่รู้ว่าจะใช้เมื่อใด สิ่งที่ฉันทำตอนนี้คือถ้าฉันไม่ต้องการวิธีเรียงลำดับหรือ FindAll ที่ฉันใช้อินเทอร์เฟซ ฉันถูกไหม? มีวิธีที่ดีกว่าในการตัดสินใจว่าจะใช้อินเตอร์เฟสหรือชนิดคอนกรีตเมื่อใด?
180 c#  .net 

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