คำถามติดแท็ก .net-4.0

. NET Framework เวอร์ชัน 4.0 ใช้สำหรับคำถามที่เกี่ยวข้องกับ. NET Framework 4.0 โดยเฉพาะ สำหรับคำถามเกี่ยวกับ. NET Framework โดยทั่วไปให้ใช้แท็ก. net

7
Razor View Engine: ทรีนิพจน์อาจไม่มีการดำเนินการแบบไดนามิก
ฉันมีรูปแบบคล้ายกับสิ่งนี้: public class SampleModel { public Product Product { get; set; } } และในตัวควบคุมของฉันฉันได้รับข้อยกเว้นพยายามพิมพ์ออกมา @Html.TextBoxFor(p => p.Product.Name) นี่เป็นข้อผิดพลาด: Exception: An expression tree may not contain a dynamic operation หากใครสามารถให้เบาะแสกับฉันเกี่ยวกับวิธีการแก้ไขปัญหานี้ฉันจะขอบคุณมันจริงๆ!

2
Microsoft.csharp.dll คืออะไรใน. NET 4.0
DLL นี้ถูกเพิ่มโดยค่าเริ่มต้นในโครงการ Visual Studio 2010 ชุดใหม่นี้ใช้ทำอะไร? ดูเหมือนว่ามันจะไม่มีอะไรมากหลังจากมองดูมันโดยใช้ Reflector และ Google ก็ไม่ได้พูดอะไรมากมาย

8
แอสเซมบลีโหมดผสมถูกสร้างขึ้นกับเวอร์ชัน 'v2.0.50727′ ของรันไทม์
ฉันได้รับข้อยกเว้นต่อไปนี้: แอสเซมบลีโหมดผสมถูกสร้างขึ้นจากเวอร์ชัน 'v2.0.50727′ ของรันไทม์และไม่สามารถโหลดในรันไทม์ 4.0 โดยไม่มีข้อมูลการกำหนดค่าเพิ่มเติม ขณะที่ฉันพยายามส่งออกรายงานคริสตัลจากโปรแกรม WPF ของฉัน ... ฉันได้เพิ่มสิ่งต่อไปนี้ใน app.config แล้ว ... <startup useLegacyV2RuntimeActivationPolicy="true"> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/> </startup> <runtime> <NetFx40_LegacySecurityPolicy enabled="true"/> </runtime> ผู้เชี่ยวชาญคนใดสามารถช่วย ???? การอ้างอิงที่ฉันพบ: http://www.davidmoore.info/2010/12/17/running-net-2-runtime-applications-under-the-net-4-runtime

7
C # สร้างใหม่ T ()
คุณสามารถเห็นสิ่งที่ฉันพยายาม (แต่ล้มเหลว) จะทำอย่างไรกับรหัสต่อไปนี้: protected T GetObject() { return new T(); } ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมอย่างมาก. แก้ไข: บริบทมีดังนี้ ฉันเล่นกับคลาสคอนโทรลเลอร์ที่กำหนดเองเพื่อให้คอนโทรลเลอร์ทั้งหมดได้มาด้วยวิธีมาตรฐาน ดังนั้นในบริบทฉันต้องการสร้างอินสแตนซ์ใหม่ของวัตถุประเภทตัวควบคุม ดังนั้นในช่วงเวลาของการเขียนมันเป็นสิ่งที่ชอบ: public class GenericController<T> : Controller { ... protected T GetObject() { return (T)Activator.CreateInstance(ObjectType); } public ActionResult Create() { var obj = GetObject() return View(obj); } ดังนั้นฉันจึงตัดสินใจว่าการสะท้อนนั้นง่ายที่สุดที่นี่ ฉันเห็นด้วยอย่างแน่นอนเมื่อได้รับข้อความเริ่มต้นของคำถามคำตอบที่เหมาะสมที่สุดในการทำเครื่องหมายว่าถูกต้องคือคำที่ใช้ข้อ จำกัด ใหม่ () ฉันได้แก้ไขแล้ว
159 c#  .net  generics  c#-4.0  .net-4.0 

4
เปลี่ยนโครงการ C ++ / CLI เป็นกรอบงานอื่นมากกว่า 4.0 ด้วย vs2010
ตั้งแต่ฉันอัพเกรดโครงการเป็นรูปแบบโครงการ visual studio 2010 โครงการ C ++ / CLI ของฉันจึงเป็นเป้าหมายเป็น. net framework 4.0 มันง่ายที่จะเปลี่ยนเวอร์ชั่นเฟรมเวิร์กเป็นเวอร์ชันอื่นจากโปรเจ็กต์ C # แต่ฉันไม่รู้ว่าจะทำสิ่งนี้ได้อย่างไรในโครงการ C ++ / CLI ฉันไม่เห็นการตั้งค่านี้ในหน้าคุณสมบัติโครงการ

10
แอ็พพลิเคชันคอนโซล .NET เป็นบริการ Windows
ฉันมีแอปพลิเคชั่นคอนโซลและต้องการเรียกใช้เป็นบริการของ Windows VS2010 มีเท็มเพลตโครงการที่อนุญาตให้แนบโครงการคอนโซลและสร้างบริการ Windows ฉันไม่ต้องการเพิ่มโครงการบริการที่แยกออกจากกันและหากเป็นไปได้ให้รวมรหัสบริการลงในคอนโซลแอปพลิเคชันเพื่อให้แอปพลิเคชันคอนโซลเป็นหนึ่งโครงการที่สามารถเรียกใช้เป็นแอปพลิเคชันคอนโซลหรือบริการ windows ได้ อาจมีคนแนะนำคลาสไลบรารีหรือโค้ดขนาดสั้นที่สามารถแปลงแอปพลิเคชัน c # console เป็นบริการได้อย่างรวดเร็วและง่ายดาย?

7
การแปลงอาเรย์แบบแปรผันร่วมจาก x เป็น y อาจทำให้เกิดข้อยกเว้นขณะทำงาน
ฉันมีprivate readonlyรายการLinkLabels ( IList<LinkLabel>) ในภายหลังฉันเพิ่มLinkLabels ในรายการนี้และเพิ่มป้ายกำกับเหล่านั้นลงในรายการFlowLayoutPanelต่อไปนี้: foreach(var s in strings) { _list.Add(new LinkLabel{Text=s}); } flPanel.Controls.AddRange(_list.ToArray()); แสดงให้เห็นว่า Resharper Co-variant array conversion from LinkLabel[] to Control[] can cause run-time exception on write operationฉันเตือน: โปรดช่วยฉันคิดออก: สิ่งนี้หมายความว่าอย่างไร นี่คือการควบคุมผู้ใช้และจะไม่สามารถเข้าถึงได้โดยวัตถุหลายรายการเพื่อตั้งค่าป้ายกำกับดังนั้นการเก็บรักษารหัสไว้จะไม่ส่งผลกระทบต่อมัน

7
ฉันจะเรียกใช้ msbuild จากบรรทัดคำสั่งโดยใช้ Windows SDK 7.1 ได้อย่างไร
ฉันกำลังตั้งค่าการสนับสนุน. NET 4.0 บนเซิร์ฟเวอร์ CI ของเรา ฉันได้ติดตั้ง. NET 4.0 และเครื่องมือ. NET จาก Windows 7.1 SDK แล้ว บน. NET 2.0 และ 3.5 ที่เพิ่งทำงาน ด้วย. NET 4 เมื่อฉันเรียกใช้ "พรอมต์คำสั่งของ Windows SDK 7.1" จากเมนูเริ่มก็บ่นเกี่ยวกับ The x86 compilers are not currently installed. x86-x86 Please go to Add/Remove Programs to update your installation. . Setting …
141 .net-4.0  msbuild  sdk 

13
ไม่มีการใช้งาน OrderDictionary ทั่วไป?
ดูเหมือนจะไม่มีการใช้งานทั่วไปของOrderedDictionary(ซึ่งอยู่ในSystem.Collections.Specializedเนมสเปซ) ใน. NET 3.5 มีใครที่ฉันหายไป? ฉันพบการใช้งานที่นั่นเพื่อมอบฟังก์ชันการทำงาน แต่สงสัยว่า / เหตุใดจึงไม่มีการใช้งานทั่วไปนอกกรอบและถ้าใครรู้ว่าเป็นสิ่งที่อยู่ใน.

5
ใช้ async-await บน. net 4
ขณะนี้ฉันเริ่มสร้างแอปพลิเคชันที่จะได้รับประโยชน์มากมายจากคุณลักษณะ async ที่รอคอยของ C # 5 แต่ฉันไม่แน่ใจว่าเวอร์ชัน VS และรันไทม์ async ที่จะใช้ เมื่อดูที่ชาร์ตยอดนิยมของ OS ฉันจะต้องรองรับ Windows XP อีกสามปี ดูเหมือนว่า. net 4.5 จะทำงานบน Windows รุ่นใหม่กว่าเท่านั้นดังนั้นฉันต้องกำหนดเป้าหมาย. net 4.0 เครื่องพัฒนาใช้ Windows 7 ดังนั้นการใช้ VS เวอร์ชันที่ใหม่กว่าจึงไม่ใช่ปัญหา ตอนนี้ฉันต้องเลือกคอมไพเลอร์ก่อนเพื่อทำสิ่งนี้: VS2010 พร้อม AsyncCTP ดูตัวอย่าง VS2012 (และสุดท้ายเมื่อมาถึง) ตั้งค่าเป้าหมายเป็น. net 4.0 Mono (ดูเหมือนว่า 2.12 มี async-await, ฉันชอบ / ฉันคุ้นเคยกับ VS …

4
ไม่สามารถโหลด SOS ใน WinDbg
ความเป็นมา: ฉันเพิ่งเคยใช้ WinDbg และพยายามทำให้มันทำงานเป็นครั้งแรก ฉันต้องการตรวจสอบการถ่ายโอนข้อมูลหน่วยความจำที่ฉันนำมาจากไซต์ ASP.NET 4 ที่ทำงานอยู่ซึ่งโฮสต์ใน IIS 7 บน Windows Server 2008 (x86) และดาวน์โหลดลงในเครื่องของฉัน ฉันติดตั้งเครื่องมือดีบักและเปิด WinDbg เป็นครั้งแรกโดยเปิดการถ่ายโอนข้อมูลความผิดพลาด ฉันไปที่ไฟล์ | Symbol File Pathและกำหนดเส้นทาง*srv*c:\symbols*http://msdl.microsoft.com/download/symbols*และรอให้สัญลักษณ์ทั้งหมดโหลด เมื่อพยายามโหลด SOS ฉันพบปัญหา ก่อนอื่นฉันลองใช้คำสั่งต่อไปนี้ ... .loadby sos mscorwks ... Unable to find module 'mscorwks'และได้รับการตอบสนอง หลังจากกำจัดสิ่งสกปรกบนเว็บฉันพยายามโหลด mscorwks โดยดำเนินการคำสั่งต่อไปนี้ ... sxe ld mscorwks.dll g ... และได้รับการตอบกลับ "ไม่มีข้อผิดพลาดในการดีบักที่รันได้ใน" g …
132 .net-4.0  windbg  sos 

7
แก้ไขการโหลดเริ่มต้นที่ช้าสำหรับ IIS
IIS มีคุณลักษณะที่น่ารำคาญสำหรับเว็บไซต์ที่มีการเข้าชมต่ำซึ่งจะรีไซเคิลกระบวนการของผู้ปฏิบัติงานที่ไม่ได้ใช้งานทำให้ผู้ใช้รายแรกเข้ามาที่ไซต์หลังจากเวลาผ่านไประยะหนึ่งจะได้รับความล่าช้าเป็นเวลานานมาก (30+ วินาที) ฉันกำลังมองหาวิธีแก้ปัญหาและพบวิธีแก้ปัญหาที่เป็นไปได้เหล่านี้ A. ใช้ปลั๊กอินการเริ่มต้นแอปพลิเคชัน B. ใช้ Auto-Start กับ. NET 4 C. ปิดใช้งานการหมดเวลาว่าง (ภายใต้การรีเซ็ต IIS) D. คอมไพล์ไซต์ล่วงหน้า ฉันสงสัยว่าตัวเลือกใดเป็นที่ต้องการและที่สำคัญทำไมจึงมีวิธีแก้ปัญหาเดียวกันมากมาย (ฉันเดาว่าไม่ใช่และฉันก็เข้าใจบางอย่างไม่ถูกต้อง) แก้ไข การแสดงCดูเหมือนจะเพียงพอที่จะทำให้ไซต์ของฉันร้อนขึ้น แต่ฉันได้ค้นพบว่ารากที่แท้จริงของความช้าของไซต์ของฉันเกี่ยวข้องกับ Entity Framework ซึ่งฉันไม่สามารถเข้าใจได้ว่าทำไมมันถึงเย็น ดูคำถามนี้ซึ่งน่าเสียดายที่ยังไม่ได้รับคำตอบ! ในที่สุดฉันก็ต้องสร้างสคริปต์อุ่นเครื่องเพื่อเข้าชมไซต์ของฉันเป็นครั้งคราวเพื่อให้แน่ใจว่ามันยังคงรวดเร็ว

7
การคอมไพล์ตามเงื่อนไขและเป้าหมายเฟรมเวิร์ก
มีสถานที่เล็ก ๆ น้อย ๆ ที่โค้ดสำหรับโครงการของฉันอาจสามารถปรับปรุงได้อย่างมากหากกรอบเป้าหมายเป็นเวอร์ชันใหม่กว่า ฉันต้องการใช้ประโยชน์จากการรวบรวมแบบมีเงื่อนไขใน C # ให้ดีขึ้นเพื่อเปลี่ยนสิ่งเหล่านี้ตามต้องการ สิ่งที่ต้องการ: #if NET40 using FooXX = Foo40; #elif NET35 using FooXX = Foo35; #else NET20 using FooXX = Foo20; #endif สัญลักษณ์เหล่านี้ฟรีหรือไม่? ฉันต้องฉีดสัญลักษณ์เหล่านี้เป็นส่วนหนึ่งของการกำหนดค่าโครงการหรือไม่ ดูเหมือนง่ายพอที่จะทำเพราะฉันจะรู้ว่าเฟรมเวิร์กใดถูกกำหนดเป้าหมายจาก MSBuild /p:DefineConstants="NET40" ผู้คนรับมือกับสถานการณ์นี้อย่างไร? คุณกำลังสร้างการกำหนดค่าที่แตกต่างกันหรือไม่? คุณส่งผ่านค่าคงที่ผ่านทางบรรทัดคำสั่งหรือไม่?
124 c#  .net-3.5  msbuild  .net-4.0 

13
log4net ไม่ทำงาน
สวัสดีฉันมีการกำหนดค่านี้ใน web.config ของฉัน <log4net> <appender name="LogFileAppender" type="log4net.Appender.FileAppender"> <param name="File" value="mylog.log" /> <param name="AppendToFile" value="true" /> <layout type="log4net.Layout.PatternLayout"> <param name="Header" value="" /> <param name="Footer" value="" /> <param name="ConversionPattern" value="%d [%t] %-5p %m%n" /> </layout> </appender> <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender" > <layout type="log4net.Layout.PatternLayout"> <param name="Header" value="[Header]\r\n" /> <param name="Footer" value="[Footer]\r\n" /> <param name="ConversionPattern" …
123 c#  .net-4.0  log4net 

10
ฉันจะตรวจสอบได้อย่างไรว่าคุณสมบัติมีอยู่ในประเภทที่ไม่ระบุตัวตนแบบไดนามิกใน c #
ฉันมีอ็อบเจ็กต์ประเภทไม่ระบุตัวตนที่ฉันได้รับเป็นไดนามิกจากวิธีการที่ฉันต้องการตรวจสอบคุณสมบัติที่มีอยู่ในอ็อบเจ็กต์นั้น .... var settings = new { Filename="temp.txt", Size=10 } ... function void Settings(dynamic settings) { var exists = IsSettingExist(settings,"Filename") } ฉันจะใช้ IsSettingExist ได้อย่างไร

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