Şablon parametreleri
Şablon örneği oluşturulurken şablonunuzdaki değerleri değiştirebilirsiniz. Bu işlevi ayarlamak için şablon parametrelerini kullanın. Şablon parametreleri, şablondaki sınıf adları ve ad alanları gibi değerleri değiştirmek için kullanılabilir. Kullanıcı yeni bir öğe veya proje eklediğinde arka planda çalışan şablon sihirbazı bu parametrelerin yerini alır.
Şablon parametrelerini bildirme ve etkinleştirme
Şablon parametreleri $parameter$ biçiminde bildirilir. Örneğin:
$rootnamespace$
$guid 1$
$guid 5$
Şablonlarda parametre değişimini etkinleştirme
Şablonun .vstemplate dosyasında, parametre değişimini etkinleştirmek istediğiniz öğeye karşılık gelen öğesini bulun
ProjectItem
.öğesinin
ReplaceParameters
özniteliğiniProjectItem
olaraktrue
ayarlayın.Proje öğesinin kod dosyasına uygun yerlerde parametreleri ekleyin. Örneğin, aşağıdaki parametre bir dosyadaki ad alanı için kök ad alanının kullanıldığını belirtir:
namespace $rootnamespace$
Ayrılmış şablon parametreleri
Aşağıdaki tabloda, herhangi bir şablon tarafından kullanılabilecek ayrılmış şablon parametreleri listelenmiştir:
Parametre | Açıklama |
---|---|
clrversion | Ortak dil çalışma zamanının (CLR) geçerli sürümü. |
Dahili_* | Üst şablonun ext_ değişkenlerine başvurmak için herhangi bir parametreye ön eki ekleyin. Örneğin, ext_safeprojectname . |
guid[1-10] | Proje dosyasındaki proje GUID'sini değiştirmek için kullanılan GUID. En fazla 10 benzersiz GUID belirtebilirsiniz (örneğin, guid1 ). |
ıtemname | Parametresinin kullanıldığı dosyanın adı. |
Machinename | Geçerli bilgisayar adı (örneğin, Bilgisayar01). |
Projeadı | Proje oluşturulduğunda kullanıcı tarafından sağlanan ad. Bu parametre yalnızca proje şablonları için geçerlidir. |
registeredorganization | HKLM\Software\Microsoft\Windows NT\CurrentVersion\RegisteredOrganization kayıt defteri anahtarı değeri. |
rootnamespace | Geçerli projenin kök ad alanı ve ardından geçerli öğenin alt klasörü, eğik çizgilerle noktalarla değiştirilir. |
defaultnamespace | Geçerli projenin kök ad alanı. |
safeitemname | Ancak, tüm güvenli olmayan karakterler ve boşluklar alt çizgi karakterleriyle değiştirilirken olduğu gibi itemname . |
safeitemrootname | ile safeitemname aynı. |
safeprojectname | Proje oluşturulduğunda kullanıcı tarafından sağlanan ancak tüm güvenli olmayan karakterler ve boşluklar kaldırılmış olan ad. Bu parametre yalnızca proje şablonları için geçerlidir. |
targetframeworkversion | Hedef .NET Framework'ün geçerli sürümü. |
time | Windows kullanıcı ayarlarını temel alan bir biçimde geçerli saat. Saat biçimine örnek olarak DD/AA/YYYY 00:00:00 gösteriliyor. |
specifiedsolutionname | Çözümün adı. "Çözümü ve projeyi aynı dizine yerleştir" işareti kaldırıldığında çözüm specifiedsolutionname adı olur. "Çözüm dizini oluştur" işaretlenmediğinde boş specifiedsolutionname olur. |
userdomain | Geçerli kullanıcı etki alanı. |
username | Geçerli kullanıcı adı. |
webnamespace | Geçerli web sitesinin adı. Bu parametre, benzersiz sınıf adlarını garanti etmek için web formu şablonunda kullanılır. Web sitesi web sunucusunun kök dizinindeyse, bu şablon parametresi web sunucusunun kök dizinine çözümleniyordur. |
yıl | YYYY biçiminde geçerli yıl. |
Not
Şablon parametreleri büyük/küçük harfe duyarlıdır.
Özel şablon parametreleri
Parametre değiştirme sırasında kullanılan varsayılan ayrılmış şablon parametrelerine ek olarak kendi şablon parametrelerinizi ve değerlerinizi belirtebilirsiniz. Daha fazla bilgi için bkz . CustomParameters öğesi (Visual Studio şablonları).
Örnek: Dosya adı için proje adını kullanma
Öznitelikte TargetFileName
bir parametre kullanarak proje öğeleri için değişken dosya adları belirtebilirsiniz.
Aşağıdaki örnek, yürütülebilir dosyanın adının tarafından $projectname$
belirtilen proje adını kullandığını belirtir.
<TemplateContent>
<ProjectItem
ReplaceParameters="true"
TargetFileName="$projectname$.exe">
File1.exe
</ProjectItem>
...
</TemplateContent>
Örnek: Ad alanı adı için güvenli proje adını kullanın
C# sınıf dosyasındaki ad alanının güvenli proje adını kullanmak için aşağıdaki söz dizimini kullanın:
namespace $safeprojectname$
{
public class Class1
{
public Class1()
{ }
}
}
Proje şablonunun .vstemplate dosyasında, dosyaya ReplaceParameters="true"
başvururken özniteliğini ekleyin:
<TemplateContent>
<ProjectItem ReplaceParameters="true">
Class1.cs
</ProjectItem>
...
</TemplateContent>