ASP.NET web sayfalarında C# 6 ve Visual Basic 14 kullanın

Womanne

Member
ASP.NET’teki yeni dil özelliklerini kullanmak için web projesinde değişiklik yapılması gerekir.


.NET Framework 4.6’nın bir parçası olarak yayınlanan C# 6 ve Visual Basic 14 dil sürümleri, yazılım geliştiriciler için sözdizimsel külçeler sağlar. Visual Studio 2015 kullanıyorsanız, dil özelliklerinin bazıları (hepsi değil) .NET’in eski sürümlerinde de kullanılabilir.

Ne yazık ki, ASP.NET Webforms ve ASP.NET MVC web projeleri web sayfaları (.aspx, .ascx, .cshtml veya .vbhtml) içindeki satır içi kod, proje .NET 4.6’da olsa bile yeni dil sözdizimini kullanmayacaktır. Güncellendi. Örneğin, web sayfalarını enterpolasyon yapmak için bir dize kullanılıyorsa:

<%# $"Name {Item.Kundenname} wohnt in {Item.Ort}"%>

Visual Studio, “‘interpolated strings’ özelliği C# 5’te mevcut değildir. Lütfen dil sürüm 6 veya üzerini kullanın” uyarısında bulunur ve çalışma zamanında şu hatayı görüntüler: “CS1056: Beklenmeyen karakter ‘$'”. Bunun nedeni, web sayfalarındaki program kodunun Visual Studio tarafından değil, .NET Framework’ün CodeDOM’u tarafından çevrilmesidir.

C# 6.0’a yükseltme, önce bir nuget paketinin kurulmasını gerektirir:

Install-Package Microsoft.CodeDom.Providers.DotNetCompilerPlatform

Ardından, Nuget paketiniz bunu yapmadıysa web.config dosyanıza aşağıdaki girişleri eklemeniz gerekir:


<system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs"
type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform
.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
warningLevel="4" compilerOptions="/langversion:6 /nowarn:1659;1699;1701"/>
<compiler language="vb;vbs;visualbasic;vbscript" extension=".vb"
type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35"
warningLevel="4" compilerOptions="/langversion:14 /nowarn:41008
/define:_MYTYPE=&quot;Web&quot; /optionInfer+"/>
</compilers>
</system.codedom>

Son olarak, tüm proje yeniden derlenmelidir. Bu bir klasör oluşturur binroslyndiğer şeylerin yanı sıra, derleyicinin geçerli sürümü (csc.exe VE vbc.exe) konum. Daha sonra, yeni sözdizimi web sitelerinde de kullanılabilir.

Temel olarak .NET Framework 4.5, 4.5.1 veya 4.5.2 ile Visual Studio’da yeni bir web projesi oluşturduğunuzda, paketler entegre edilir ve web.config-Ayarlar otomatik olarak.


()



Haberin Sonu
 
Üst