2014-12-31 3 views
2

В Java, я могу использовать файл свойств, как показано ниже, чтобы сохранить элементы ID и осуществлять как жеХранение ключей пара значений в C#

CountryName=USA 

driver.findElement(By.name(prop.getProperty("CountryName"))).click(); 

Есть ли такой способ в C#, где я могу хранить ключ значение пара и получить то же самое во время выполнения.

ответ

2

Вы всегда можете использовать Dictionary

Пример:

Dictionary<string, int> intMap = new Dictionary<string, int>(); 
intMap.Add("One", 1); 
intMap.Add("Two", 2); 

foreach (KeyValuePair<string, int> keyValue in intMap) 
{ 
    Console.WriteLine("{0} -> {1}", keyValue.Key, keyValue.Value); 
} 

Или просто использовать этот код:

KeyValuePair<string, string> NAME_HERE = new KeyValuePair<string,string>("defaultkey", "defaultvalue"); 
+0

То есть хорошая идея! , что, если я хочу хранить много пары ключевых значений почти для 100 идентификаторов элемента. Есть ли способ, храня все это в отдельном статическом классе, а затем использовать идентификатор этого элемента.? – Vignesh

0

Кроме того, чтобы использовать словарь, предложенный SandySands, вы можете найти значение по ключу

var countries = new Dictionary<string, string>() 
{ 
    {"USA", "id_1"}, 
    {"UK", "id_2"}, 
}; 

// locate the value by key: countries[key] 
driver.findElement(countries["USA"]).click() 

Если тип id просто int, я бы рекомендовал вместо этого использовать Enum.

Public Enum Country 
{ 
    USA = 1, 
    UK = 2, 
} 

driver.findElement(((int)CountryCountry.USA).ToString()).click() 
+0

Что делать, если я хочу найти элемент с xpath, а затем второй элемент с его именем класса, можете ли вы предложить некоторую идею. Мне нужно хранить много элементов id, просто думая, как это сделать и использовать. – Vignesh

+0

Просто проанализируйте статический XML-файл в классе XElement и введите словарь во время выполнения. См. Http://msdn.microsoft.com/en-us/library/system.xml.linq.xelement(v=vs.110).aspx – Eric

+0

Спасибо, eric. – Vignesh

0

словарь может непосредственно предоставить информацию по обеспечивая КЛЮЧ как элемент, как показано

Dictionary<string, string> DE = new Dictionary<string, string>(); 
DE.Add("ID1", "34 Employees, 50 Computers"); 
DE.Add("ID2", "100 Employees, 67 Computers"); 
string details = DE["ID1"]; // Key "ID1" shall give the detals as "34 Employees, 50 Computers" 
+0

driver.findelement (By.name («Login»)). Sendkeys («xyz») <- В этой строке кода, как я могу сохранить значение «Login» на ключ и реализовать его. Не могли бы вы помочь мне в этом. – Vignesh

+0

'Словарь <строка, строка> DE = новый словарь (); DE.Add («Вход», «xyz»); DE.Add ("Login1", "abc"); string details = DE ["Login"]; ' – Dennis

+0

вы можете добавить« Login »в качестве ключа, словарь представляет собой комбинацию Key и Value, где первый элемент является ключевым и вторым значением, как, Dictionary вы можете найти результаты, как описано в коде. – Dennis

Смежные вопросы