Я пишу программу C#, а мастер VSTO VisualStudio генерирует код ниже.Возвращает ли конструктор null?
private static string GetResourceText(string resourceName)
{
Assembly asm = Assembly.GetExecutingAssembly();
string[] resourceNames = asm.GetManifestResourceNames();
for (int i = 0; i < resourceNames.Length; ++i)
{
if (string.Compare(resourceName, resourceNames[i], StringComparison.OrdinalIgnoreCase) == 0)
{
using (StreamReader resourceReader = new StreamReader(asm.GetManifestResourceStream(resourceNames[i])))
{
if (resourceReader != null)
{
return resourceReader.ReadToEnd();
}
}
}
}
return null;
}
Я думаю if (resourceReader != null)
является излишним, так как конструктор всегда возвращает не нулевое. Не так ли?
Это правильно, 'resourceReader' никогда не может быть пустым в данном случае - это либо выбросить исключение, или возвращать' StreamReader' – CodingIntrigue