3
我有使用SSIS進行版本控制的問題。當我編寫腳本組件時,它會作爲二進制文件檢入版本控制,而不是C#文件(儘管這是可以理解的)。因此,下次我在腳本組件的C#文件中進行更改時,我無法看到代碼中的差異。SSIS中腳本組件C#文件的版本控制
有沒有辦法解決這個問題? 你們對此有何看法?
感謝, Vaibhav的
我有使用SSIS進行版本控制的問題。當我編寫腳本組件時,它會作爲二進制文件檢入版本控制,而不是C#文件(儘管這是可以理解的)。因此,下次我在腳本組件的C#文件中進行更改時,我無法看到代碼中的差異。SSIS中腳本組件C#文件的版本控制
有沒有辦法解決這個問題? 你們對此有何看法?
感謝, Vaibhav的
所有SSIS包我目前正與合作的(2008 SSIS)商店腳本組件代碼直接.dtsx程序文件中(這些都只是XML文件)。也就是說,您可以使用文本比較工具(Visual Studio Compare,WinMerge,BIDS Helper Smart Diff)來比較.dtsx文件。雖然這可能不是最乾淨的方法,但它確實可以讓你看到版本之間的差異。
下面是我直接從.dtsx程序文件與腳本組件拉(C#存儲爲CDATA)一個片斷:
<component id="4829" name="ExecuteQuery" componentClassID="{2E42D45B-F83C-400F-8D77-61DDE6A7DF29}" description="Executes a custom script." localeId="-1" usesDispositions="false" validateExternalMetadata="True" version="4" pipelineVersion="0" contactInfo="Executes a custom script.;Microsoft Corporation; Microsoft SqlServer v10; © 2007 Microsoft Corporation; All Rights Reserved; http://www.microsoft.com/sql/support;4">
<properties>
<property id="4833" name="SourceCode" dataType="System.String" state="cdata" isArray="true" description="Stores the source code of the component" typeConverter="" UITypeEditor="" containsID="false" expressionType="None"><arrayElements arrayElementCount="18"><arrayElement dataType="System.String"><![CDATA[\main.cs]]></arrayElement><arrayElement dataType="System.String"><![CDATA[/* Microsoft SQL Server Integration Services Script Component
* Write scripts using Microsoft Visual C# 2008.
* ScriptMain is the entry point class of the script.*/
using System;
using System.Data;
using Microsoft.SqlServer.Dts.Pipeline.Wrapper;
using Microsoft.SqlServer.Dts.Runtime.Wrapper;
using Teradata.Client.Provider;
[Microsoft.SqlServer.Dts.Pipeline.SSISScriptComponentEntryPointAttribute]
public class ScriptMain : UserComponent
{
private TdConnection tdCn;
private TdCommand tdCmd;
private TdDataReader tdRdr;
雅我認爲這是唯一的選擇,截至目前。在標記這個之前,我會等待更多的答案。謝謝 ! –