private static void CheckDirectlySpecifiedProperties(Reference reference, StringBuilder message)
{
Dictionary<string, bool> allowCopyLocal = new Dictionary<string, bool>();
allowCopyLocal.Add("Microsoft.Web.Infrastructure", true);
allowCopyLocal.Add("System.Web.Helpers", true);
allowCopyLocal.Add("System.Web.Mvc", true);
allowCopyLocal.Add("System.Web.Razor", true);
allowCopyLocal.Add("System.Web.WebPages.Deployment", true);
allowCopyLocal.Add("System.Web.WebPages", true);
allowCopyLocal.Add("System.Web.WebPages.Razor", true);
allowCopyLocal.Add("ImageMagick.Net", false);
if (reference.Aliases != null)
{
message.AppendLine(
Strings.DontSpecifyPropertyDirectly
.Display(reference.Name, "Aliases"));
}
if (reference.Private != null)
{
if (allowCopyLocal.ContainsKey(reference.Name))
{
if ((allowCopyLocal[reference.Name] && reference.Private == "True")
|| (!allowCopyLocal[reference.Name] && reference.Private == "False"))
{
// this is allowed exception
}
else
{
message.AppendLine(
Strings.DontSpecifyPropertyDirectly
.Display(reference.Name, "Copy Local"));
}
}
else
{
message.AppendLine(
Strings.DontSpecifyPropertyDirectly
.Display(reference.Name, "Copy Local"));
}
}
if (reference.EmbedInteropTypes != null)
{
message.AppendLine(
Strings.DontSpecifyPropertyDirectly
.Display(reference.Name, "Embed Interop Types"));
}
}