Use filename to determine file type
I find the cleanest way is to replace the ugly if/else if/else with a dictionary:

private static IDictionary&lt;string, string&gt; FileDataTypes = new Dictionary&lt;string, string&gt;(StringComparer.OrdinalIgnoreCase)
{
    ["Import"] = "Source Data",
    // ..
}


The also not so pretty Contains can be replaced with a nice regex that will grow or shirnk automatically if you add/remove mappings:

private static string GetFileDataType(string fullFileNameWithPath)
{
    var fileName = Path.GetFileNameWithoutExtension(fullFileNameWithPath);
    var fileContentsMatch = Regex.Match(fileName, $"__(?&lt;Type&gt;{string.Join("|", FileDataTypes.Keys)})__", RegexOptions.ExplicitCapture | RegexOptions.IgnoreCase);
    return
        fileContentsMatch.Success &amp;&amp; FileDataTypes.TryGetValue(fileContentsMatch.Groups["Type"].Value, out var fileDataType) 
            ? fileDataType 
            : FileDataTypes[string.Empty];  
}


Notice that both the dictionary and the regex are case insensitive. You should always make paths case insensitive in Windows. You are lucky that this worked for so long.

(Dislaimer: It's just an example so I was to lazy to implement all the empty/null checks)