20131209 ms build_using_task By Anney
-
Upload
learningtech -
Category
Technology
-
view
128 -
download
0
description
Transcript of 20131209 ms build_using_task By Anney
MSBuild-Inline TaskAnney
04/12/20232
需求說明
在 MSBuild 中想要自行撰寫程式。 Task Name 為 MyTest
參數為 P1
04/12/20233
UsingTask Task
04/12/20234
Example
04/12/20235
Properties
Property DescriptionTaskName [require]
AssemblyFile [require] 這項屬性接受完整路徑或相對路徑。可以使用 AssemblyName 屬性來指定內嵌 TaskFactory 類別的完整名稱,它通常位於全域組件快取 (GAC) 中。
TaskFactory [require]
04/12/20236
Child Element
Element DescriptionParameterGroup Inline 程式中所需要的 input or output 的參數
Task
Reference specifies references to the .NET assemblies that you are using in your code.
Using namespaces that you want to access.
Code Inline 程式碼
04/12/20237
ParameterGroup Properties
Property Description
Required [optional]預設為 false
ParameterType [optional]預設為 System.String
Output [optional]預設為 false 的選擇性屬性。若為 true,則在從 Execute 方法傳回之前必須提供值給此參數。
04/12/20238
Code Element - Properties
Property DescriptionLanguage 指定用於撰寫程式碼的語言。
可接受的值為 cs ( 適用於 C#) 、 vb ( 適用於 Visual
Basic) ,和 js ( 適用於 JScript) 。Type • Class,則 Code 項目會包含衍生自 ITask 介面之類別
的程式碼。• Method,則程式碼會定義 ITask 介面之 Execute 方
法的覆寫。• Fragment,則程式碼會定義 Execute 方法的內容,但
並非簽章或 return 陳述式。
04/12/20239
Example
04/12/202310
本日練習主題 Copy Target
Copy D:\test\MSBuild\MyApp Folder to D:\test\MSBuild\DST
Task: Copy
Delete Target
Delete D:\test\MSBuild\DST\*.txt
Task: Delete
Show Target
Show D:\test\MSBuild\DST\*.* Files
Task: Message
Clean Target
Task: RemoveDir
Task References
http://msdn.microsoft.com/en-us/library/vstudio/7z253716.aspx
04/12/202311
本日練習主題 (2) - Incremental
請在 Copy, Del Target 上加入 Incremental build
請執行 msbuild Test.targets /t:Copy;Del;Show 2 次,結果為何?
04/12/202312
本日練習主題 (3) - UsingTask
Taskname: MyReplaceTextTask
Input Param: oldText, newText
04/12/202313
Reference
http://msdn.microsoft.com/en-us/library/dd722601.aspx
04/12/202314
~ THE END~