diff --git a/spkl/SparkleXrm.Tasks/CrmSvcUtil/SourceCodeSplitter.cs b/spkl/SparkleXrm.Tasks/CrmSvcUtil/SourceCodeSplitter.cs index 345ca33b..7b5cc326 100644 --- a/spkl/SparkleXrm.Tasks/CrmSvcUtil/SourceCodeSplitter.cs +++ b/spkl/SparkleXrm.Tasks/CrmSvcUtil/SourceCodeSplitter.cs @@ -10,6 +10,14 @@ public class SourceCodeSplitter private const string CustomActions = "CustomActions"; private const string Entities = "Entities"; private const string OptionSets = "OptionSets"; + private const string AutogeneratedString = "//------------------------------------------------------------------------------" + + "\n// " + + "\n// This code was generated by a tool." + + "\n//" + + "\n// Changes to this file may cause incorrect behavior and will be lost if" + + "\n// the code is regenerated." + + "\n// " + + "\n//------------------------------------------------------------------------------\n"; protected ITrace _trace; public SourceCodeSplitter(ITrace trace) @@ -72,6 +80,8 @@ private void WriteTypeContentToFile(string typeName, string typeNamespace, strin private string GenerateTypeText(string typeNamespace, string content) { var stringBuilder = new StringBuilder(); + stringBuilder.AppendLine(AutogeneratedString); + var namespaceContent = !string.IsNullOrWhiteSpace(typeNamespace); if (namespaceContent) { diff --git a/spkl/SparkleXrm.Tasks/CrmSvcUtil/SourceCodeTypeExtractor.cs b/spkl/SparkleXrm.Tasks/CrmSvcUtil/SourceCodeTypeExtractor.cs index 2246b68f..435b31fb 100644 --- a/spkl/SparkleXrm.Tasks/CrmSvcUtil/SourceCodeTypeExtractor.cs +++ b/spkl/SparkleXrm.Tasks/CrmSvcUtil/SourceCodeTypeExtractor.cs @@ -6,8 +6,8 @@ public class SourceCodeTypeExtractor { - private const string ClassPattern = @"([a-zA-Z0-9\(\"",\s\.\)\]\s\n\[:])+public\spartial[a-zA-Z0-9\s:\.,_]+{(?:[^{}]|(?{)|(?<-open>}))+(?(open)(?!))}"; - private const string EnumPattern = @"([a-zA-Z0-9\(\"",\s\.\)\]\s\n\[:])+public\senum[a-zA-Z0-9\s_]+{(?:[^{}]|(?{)|(?<-open>}))+(?(open)(?!))}"; + private const string ClassPattern = @"([a-zA-Z0-9\(\"",\s\.\)\]\s\n\[::\.,_])+public\spartial[a-zA-Z0-9\s:\.,_]+{(?:[^{}]|(?{)|(?<-open>}))+(?(open)(?!))}"; + private const string EnumPattern = @"([a-zA-Z0-9\(\"",\s\.\)\]\s\n\[::\.,_])+public\senum[a-zA-Z0-9\s_]+{(?:[^{}]|(?{)|(?<-open>}))+(?(open)(?!))}"; public List ExtractTypes(string input) {