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

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

3
ไม่พบข้อยกเว้นของงานโดยการรอบนงานหรือการเข้าถึงคุณสมบัติข้อยกเว้น เป็นผลให้ข้อยกเว้นที่ไม่สามารถสังเกตได้คือ
สิ่งนี้หมายความว่าอย่างไรและจะแก้ไขได้อย่างไร? ฉันใช้งาน TPL ข้อผิดพลาดทั้งหมด ไม่พบข้อยกเว้นของงานโดยการรอบนงานหรือการเข้าถึงคุณสมบัติข้อยกเว้น ด้วยเหตุนี้ข้อยกเว้นที่ไม่สามารถสังเกตได้จึงถูกเปลี่ยนใหม่โดยเธรด Finalizer ใน System.Threading.Tasks.TaskExceptionHolder.Finalize () mscorlib

19
วิธีที่เร็วที่สุดในการคำนวณ sin และ cos เข้าด้วยกันคืออะไร?
ฉันต้องการคำนวณทั้งไซน์และไซน์ร่วมของค่าด้วยกัน (ตัวอย่างเช่นการสร้างเมทริกซ์การหมุน) แน่นอนว่าฉันสามารถคำนวณแยกจากกันได้a = cos(x); b = sin(x);แต่ฉันสงสัยว่ามีวิธีที่เร็วกว่าเมื่อต้องการทั้งสองค่า แก้ไข: เพื่อสรุปคำตอบจนถึงตอนนี้: วลาดกล่าวว่ามีคำสั่ง asm ที่FSINCOSคำนวณทั้งคู่ (เกือบจะในเวลาเดียวกันกับการโทรไปหาFSINคนเดียว) เช่นเดียวกับที่จิสังเกตเห็นการเพิ่มประสิทธิภาพนี้บางครั้งคอมไพเลอร์ทำไปแล้ว (เมื่อใช้แฟล็กการปรับให้เหมาะสม) คาเฟ่ชี้ให้เห็นว่าฟังก์ชั่นsincosและsincosfอาจพร้อมใช้งานและสามารถเรียกได้โดยตรงเพียงแค่รวมmath.h มีการกล่าวถึงวิธีการของ Tanascius ในการใช้ตารางการค้นหาที่ขัดแย้งกัน (อย่างไรก็ตามในคอมพิวเตอร์ของฉันและในสถานการณ์มาตรฐานจะทำงานได้เร็วกว่า 3 เท่าsincosโดยมีความแม่นยำเกือบเท่ากันสำหรับจุดลอยตัว 32 บิต) โจเอลกู๊ดวินเชื่อมโยงกับแนวทางที่น่าสนใจของเทคนิคการประมาณค่าที่รวดเร็วมากพร้อมด้วยความแม่นยำที่ค่อนข้างดี (สำหรับฉันนี่จะเร็วกว่านี้จากการค้นหาตาราง)
100 c#  c++  c  algorithm  math 

5
เมื่อใดควรใช้คุณสมบัติอ่านอย่างเดียวและรับเท่านั้น
ในแอปพลิเคชัน. NET ฉันควรใช้คุณสมบัติ "อ่านอย่างเดียว" เมื่อใดและควรใช้เพียง "รับ" เมื่อใด อะไรคือความแตกต่างระหว่างสองสิ่งนี้ private readonly double Fuel= 0; public double FuelConsumption { get { return Fuel; } } หรือ private double Fuel= 0; public double FuelConsumption { get { return Fuel; } }
100 c#  .net 



9
การตรวจสอบค่าทศนิยมเพื่อความเท่าเทียมกันเป็น 0 ปลอดภัยหรือไม่
ฉันรู้ว่าคุณไม่สามารถพึ่งพาความเท่าเทียมกันระหว่างค่าประเภทสองหรือทศนิยมได้ตามปกติ แต่ฉันสงสัยว่า 0 เป็นกรณีพิเศษหรือไม่ ในขณะที่ฉันสามารถเข้าใจความไม่ตรงระหว่าง 0.00000000000001 ถึง 0.00000000000002 แต่ 0 นั้นดูเหมือนจะค่อนข้างยากที่จะสับสนเนื่องจากไม่มีอะไรเลย หากคุณไม่เข้าใจอะไรเลยมันก็ไม่ใช่อะไรอีกแล้ว แต่ฉันไม่รู้เกี่ยวกับหัวข้อนี้มากนักจึงไม่เหมาะที่จะพูด double x = 0.0; return (x == 0.0) ? true : false; จะกลับมาจริงหรือไม่?

6
คุณจะตรวจสอบได้อย่างไรว่าการเข้าถึงถูกปฏิเสธสำหรับไฟล์ใน. NET
โดยพื้นฐานแล้วฉันต้องการตรวจสอบว่าฉันมีสิทธิ์เปิดไฟล์ก่อนที่จะลองเปิดจริงหรือไม่ ฉันไม่ต้องการใช้ try / catch สำหรับการตรวจสอบนี้เว้นแต่ฉันจะต้องทำ มีคุณสมบัติการเข้าถึงไฟล์ที่ฉันสามารถตรวจสอบก่อนส่งได้หรือไม่?
100 c#  .net  file-access 

4
การกำหนดเส้นทาง: คำขอปัจจุบันสำหรับการดำเนินการ […] มีความคลุมเครือระหว่างวิธีการดำเนินการต่อไปนี้
ฉันมีการเรียกดูBrowse.chtmlซึ่งผู้ใช้สามารถป้อนคำค้นหาหรือเว้นว่างไว้ เมื่อป้อนคำค้นหาที่ผมต้องการที่จะตรงหน้าเพื่อและเมื่อไม่มีอะไรจะเข้ามาผมต้องการที่จะตรงเบราว์เซอร์http://localhost:62019/Gallery/Browse/{Searchterm} http://localhost:62019/Gallery/Browse/Start/Here เมื่อฉันลองสิ่งนี้ฉันได้รับข้อผิดพลาด: คำขอปัจจุบันสำหรับการดำเนินการ 'เรียกดู' บนตัวควบคุมชนิด 'GalleryController' ไม่ชัดเจนระหว่างวิธีการดำเนินการต่อไปนี้: System.Web.Mvc.ActionResult เรียกดู (System.String) ในประเภท AutoApp_MVC.Controllers.GalleryController System.Web.Mvc.ActionResult เรียกดู (Int32, System.String) บนประเภท AutoApp_MVC.Controllers.GalleryController ทุกสิ่งที่ฉันทำกับ MVC เป็นครั้งแรก ฉันไม่แน่ใจว่าจะลองทำอะไรอีกในตอนนี้ public ActionResult Browse(string id) { var summaries = /* search using id as search term */ return View(summaries); } public ActionResult Browse(string name1, string name2) { …
100 c#  asp.net-mvc 

5
iTextSharp - การส่ง pdf ในหน่วยความจำในไฟล์แนบอีเมล
ฉันถามคำถามสองสามข้อที่นี่ แต่ยังคงมีปัญหา ฉันจะขอบคุณถ้าคุณสามารถบอกฉันได้ว่าฉันทำอะไรผิดในรหัสของฉัน ฉันเรียกใช้โค้ดด้านบนจากหน้า ASP.Net และได้รับ "ไม่สามารถเข้าถึงสตรีมแบบปิด" var doc = new Document(); MemoryStream memoryStream = new MemoryStream(); PdfWriter.GetInstance(doc, memoryStream); doc.Open(); doc.Add(new Paragraph("First Paragraph")); doc.Add(new Paragraph("Second Paragraph")); doc.Close(); //if I remove this line the email attachment is sent but with 0 bytes MailMessage mm = new MailMessage("username@gmail.com", "username@gmail.com") { Subject = …
100 c#  email  pdf  itextsharp 

11
ASP.NET MVC 3: แทนที่แอตทริบิวต์ "name" ด้วย TextBoxFor
เป็นไปได้ไหมเมื่อใช้Html.TextBoxForเพื่อแทนที่แอตทริบิวต์ name ฉันพยายามแล้วไม่ประสบความสำเร็จ ฉันจำเป็นต้องใช้ TextBoxFor เพื่อให้การตรวจสอบฝั่งไคลเอ็นต์ทำงานได้อย่างไรก็ตามด้วยเหตุผลที่ฉันจะไม่เข้าไปฉันต้องการให้ชื่อของกล่องข้อความแตกต่างจากที่สร้างขึ้น ฉันได้ลองทำสิ่งต่อไปนี้แล้ว: @Html.TextBoxFor(x => x.Data, new { name = Model.Key + "_Data", id = Model.Key + "_Data" }) ซึ่งใช้ได้กับ ID แต่ไม่ใช่ชื่อ เป็นไปได้หรือไม่ อัปเดต : ค้นหารหัสสำหรับ TextBoxFor ดูเหมือนจะไม่มีวิธีง่ายๆ หวังว่าจะมีคนพิสูจน์ได้ว่าฉันผิด

5
ASP.NET MVC ส่งผ่าน ID ใน ActionLink ไปยังคอนโทรลเลอร์
ฉันไม่เห็นเพื่อดึง ID ที่ฉันส่งเป็น html.ActionLink ในคอนโทรลเลอร์ของฉันนี่คือสิ่งที่ฉันกำลังพยายามทำ <li> <%= Html.ActionLink("Modify Villa", "Modify", "Villa", new { @id = "1" })%></li> public ActionResult Modify(string ID) { ViewData["Title"] =ID; return View(); } นั่นคือสิ่งที่ฉันทำตามแบบฝึกหัดที่แนะนำ แต่มันใช้งานไม่ได้มันยังใส่ความยาว = 5 ที่ท้าย URL! ขอบคุณล่วงหน้า! แก้ไข: นี่คือเส้นทางที่ฉันใช้เป็นค่าเริ่มต้น routes.MapRoute( "Default", // Route name "{controller}/{action}/{id}", // URL with parameters new { controller = …
100 c#  asp.net-mvc 

10
เมื่อใช้ไฟล์ Settings.settings ใน. NET จริงๆแล้ว config ถูกเก็บไว้ที่ไหน?
เมื่อใช้ไฟล์ Settings.settings ใน. NET จริงๆแล้ว config ถูกเก็บไว้ที่ไหน? ฉันต้องการลบการตั้งค่าที่บันทึกไว้เพื่อกลับไปสู่สถานะเริ่มต้น แต่ไม่พบว่าเก็บไว้ที่ใด ... มีแนวคิดอย่างไร
100 c#  .net  settings 

11
วิธีล้าง MemoryCache
ฉันได้สร้างแคชโดยใช้คลาส MemoryCache ฉันเพิ่มบางรายการเข้าไป แต่เมื่อฉันต้องการโหลดแคชใหม่ฉันต้องการล้างมันก่อน อะไรคือวิธีที่เร็วที่สุดในการดำเนินการนี้ ฉันควรวนซ้ำรายการทั้งหมดและลบทีละรายการหรือมีวิธีที่ดีกว่านี้

3
ไม่สามารถใช้ SynchronizationContext ปัจจุบันเป็น TaskScheduler
ผมใช้งานเพื่อให้ทำงานได้นานทำงานโทรเซิร์ฟเวอร์ใน ViewModel ของฉันและผลลัพธ์จะเรียงกลับในการใช้Dispatcher TaskScheduler.FromSyncronizationContext()ตัวอย่างเช่น: var context = TaskScheduler.FromCurrentSynchronizationContext(); this.Message = "Loading..."; Task task = Task.Factory.StartNew(() => { ... }) .ContinueWith(x => this.Message = "Completed" , context); สิ่งนี้ใช้ได้ดีเมื่อฉันเรียกใช้แอปพลิเคชัน แต่เมื่อฉันทำการNUnitทดสอบResharperฉันได้รับข้อความแสดงข้อผิดพลาดในการโทรFromCurrentSynchronizationContextเป็น: ไม่สามารถใช้ SynchronizationContext ปัจจุบันเป็น TaskScheduler ฉันเดาว่านี่เป็นเพราะการทดสอบทำงานบนเธรดของผู้ปฏิบัติงาน ฉันจะแน่ใจได้อย่างไรว่าการทดสอบรันบนเธรดหลัก ข้อเสนอแนะอื่น ๆ ยินดีต้อนรับ


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