ایجاد قطعه کد (Code Snippet) سفارشی در ویژوال استودیو 2015

پنجشنبه 13 خرداد 1395

این مقاله ، مراحل ایجاد و ثبت یک قطعه کد(Code Snippet) سفارشی برای سی شارپ در ویژوال استودیو 2015 ، را نشان می دهد.

ایجاد قطعه کد (Code Snippet) سفارشی در ویژوال استودیو 2015

این مقاله ، مراحل  ایجاد و ثبت یک قطعه کد سفارشی سازی شده برای C# در ویژوال استودیو 2015  ، را نشان می دهد.قطعه کدها ، برای توزیع و دوباره استفاده کردن کد بسیار مناسب هستند.که آن ها موجب صرفه جویی در زمان، در نوشتن کدهای تکراری می شود. برای ایجاد کردن قطعه کد سفارشی سازی شده  ما نیاز به ایجاد یک فایل XML به همراه همه ی جزئیات ، داریم.

کد XML زیر را ایجاد کنید و نام آن را AddClass-Snippet.snippet بگذارید.

 

 

در قسمت header ، ما ویژگی های Title ,Author و ... را تنظیم می کنیم.

 

 

در قسمت Reference ، ما می توانیم به assembly ها و namespaceهای موجود reference ها را اضافه کنیم.در اینجا ،ما یک reference به System.ComponentModel.DataAnnotations.dll اضافه می کنیم و به این ترتیب وارد می کنیم.بنابراین ،زمانی که از این قطعه کد  استفاده می کنیم ،این قطعه کد شامل این assembly خواهد بود .

در این بخش ، ما می توانیم لیترال ها یا شی هایی که نیاز دارند با قطعه کدها تعویض شوند را تعریف کنیم و همچنین می توان  برای استفاده کردن از همان قطعه کد ، با استفاده از $ $ name دوباره به آن ها  مراجعه کنیم. در اینجا ، نام کلاس لیترال و شی لیترال را ، تعریف می کنیم.

در کد زیر ، ما می توانیم باتوجه  به زبان نوشته شده ، کدها را در قسمت CData اضافه کنیم  همانطوری که در زیر آمده است.

 

این قطعه کد ، یک کلاس را به برنامه اضافه می کند و به ما اجازه می دهد که یک نام به آن بدهیم وهمین کار را می توانیم برای متغیرهای استاتیک انجام دهیم.

در زیر کد کامل شده آمده است:

<?xml version="1.0" encoding="utf-8"?>  
    <CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">  
      <CodeSnippet Format="1.0.0">  
        <Header>  
          <Title>Add Class</Title>  
          <Author>Sateesh</Author>  
          <Description>Adds boilerplate code for creating a class</Description>  
          <Shortcut>addclass</Shortcut>  
        </Header>  
        <Snippet>  
          <References>  
            <Reference>  
              <Assembly>System.ComponentModel.DataAnnotations.dll</Assembly>  
            </Reference>  
          </References>  
          <Imports>  
            <Import>  
              <Namespace>System.ComponentModel.DataAnnotations</Namespace>  
            </Import>  
          </Imports>  
          <Declarations>  
            <Literal>  
              <ID>classname</ID>  
              <ToolTip>Replace with specified name</ToolTip>  
              <Default>MyClass</Default>  
            </Literal>  
            <Object>  
              <ID>Object</ID>  
              <Type>System.Object</Type>  
              <ToolTip>Replace with a object in your application.</ToolTip>  
              <Default>myObject</Default>  
            </Object>  
          </Declarations>  
          <Code Language="CSharp">  
            <![CDATA[ 
    public class $classname${ 
            private static $classname$ myObj= new $classname$(); 
    Object con = $Object$; 
            public int Id 
            { 
                get; set; 
            } 
            [StringLength(20)] 
            public string Name 
            { 
                get; set; 
            } 
            [EmailAddress] 
            public string Email 
            { 
                get; set; 
            } 
    } 
    ]]>  
          </Code>  
        </Snippet>  
      </CodeSnippet>  
    </CodeSnippets>  

 

حال آن را در ویژوال استودیو 2015 وارد می کنیم، و از آن استفاده می کنیم.ویژوال خود را باز کنید و روی Tools کلیک کنید ، Code Snipet Manager و روی Import کلیک کنید و  فایل Snippetرا انتخاب کنید.

 

Location هایی که قطعه کد ها در آن ذخیره شده اند را انتخاب کنید .روی Finish کلیک کنید و یک console application  جدید ایجاد کنید و از قطعه کد جدید ، با تایپ کردن add class  و دکمه ی TAB زدن ، استفاده کنید.

 

 

که این یک reference اضافه می کند و System.ComponentModel.DataAnnotations.dll را وارد پروژه می کند.

برنامه نویسان

نویسنده 3355 مقاله در برنامه نویسان

کاربرانی که از نویسنده این مقاله تشکر کرده اند

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید