이 메서드는 OSVersion이라는 클래스의 일부입니다. 콘솔 응용 프로그램에서 이것을 테스트 할 때 정상적으로 작동합니다. Count가 현재 컨텍스트에 없습니다. 누군가는 이것에 약간 빛을 비춰 주실 수 있습니까.이름 수는 현재 컨텍스트에 없습니다.
public static bool OperatingSystemVersionGet()
{
XmlDocument xlDoc = new XmlDocument();
string sfile =
@"C:\dev\4.6\RTM\R1\Install\SetupManager\SourceCode.SetupManager\SourceCode.SetupManager\Configs\blackpearl\Product.config";
xlDoc.Load(sfile);
XmlNodeList nodeList = xlDoc.SelectNodes("//dependancy");
List<string> compareList = new List<string>();
string osv = Environment.OSVersion.VersionString;
int firstIndex = osv.IndexOf(' ');
int secondIndex = osv.IndexOf(' ', firstIndex + 1);
int thirdIndex = osv.IndexOf(' ', secondIndex + 1);
String osName = osv.Substring(0, thirdIndex);
String majorVersion = osv.Substring(thirdIndex + 1, 1);
String minorVersion = osv.Substring(thirdIndex + 3, 1);
bool isIn = false;
if (nodeList != null)
foreach (XmlNode node in nodeList)
{
try
{
string type = node.Attributes["type"].Value;
string name = node.Attributes["name"].Value;
string feat = node.Attributes["featureversion"].Value;
String[] versionPart = feat.Split('.');
string second = versionPart[1];
string third = versionPart[2];
if (type == "Windows")
{
if((name == osName) && ((second == majorVersion) && (third == minorVersion)))
{
compareList.Add(name);
}
}
}
catch(NullReferenceException ex)
{
//nullReferenceException handled here
}
}
if(compareList.Count == 0)
{
isIn = true;
}
else
{
isIn = false;
}
return isIn;
}
compareList를 초기화하는 위치가 표시되지 않습니다. 그러나, 그것은 당신이리스트의'compare' 엘레멘트에 접근하려고 시도하는 것처럼 보입니다. 대신에 .size()를 찾으려는 곳? – PenguinCoder
반환 값은 "return compareList.Count> 0"이 될 수 있다는 것을 제외하고는 아무런 문제가 없습니다. – alexsuslin
@PenguinCoder : 그는 10 번째 라인에서'compareList'를 초기화하고'Count'는'List'의 올바른 속성입니다. 그러나'size' 메쏘드는 없습니다. –