Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WatiN:GetAttributeValue(“value”)不返回值_C#_.net_Testing_Automated Tests_Watin - Fatal编程技术网

C# WatiN:GetAttributeValue(“value”)不返回值

C# WatiN:GetAttributeValue(“value”)不返回值,c#,.net,testing,automated-tests,watin,C#,.net,Testing,Automated Tests,Watin,我打算从所有语言的谷歌翻译菜单中显示value-of-value属性。它由页面的左侧列表表示 这是我正在运行的代码,控制台上没有显示任何内容(除了新行)。有什么不对劲吗 using System; using WatiN.Core; namespace Test { class Program { [STAThread] static void Main(string[] args) { IE ie = n

我打算从所有语言的谷歌翻译菜单中显示value-of-value属性。它由页面的左侧列表表示

这是我正在运行的代码,控制台上没有显示任何内容(除了新行)。有什么不对劲吗

using System;
using WatiN.Core;

namespace Test
{
    class Program
    {
        [STAThread]
        static void Main(string[] args)
        {
            IE ie = new IE("https://translate.google.com/");

            Div selectLanguage = ie.Div(Find.ById("gt-sl-sugg"));
            foreach (var lang in selectLanguage.ChildrenOfType<Div>())
                Console.WriteLine(lang.GetAttributeValue("value"));

            ie.Close();

            Console.Read();
        }
     }
}
使用系统;
使用WatiN.Core;
名称空间测试
{
班级计划
{
[状态线程]
静态void Main(字符串[]参数)
{
IE=新IE(“https://translate.google.com/");
Div selectLanguage=ie.Div(Find.ById(“gt sl sugg”);
foreach(selectLanguage.ChildrenOfType()中的var lang)
Console.WriteLine(lang.GetAttributeValue(“value”);
即关闭();
Console.Read();
}
}
}

WatiN:2.1.0
(“值”)
替换为
(“值”)
,出于某种原因,所有属性的首字母都大写。我的猜测是watin将DOM元素反序列化为对象,并且由于使用该命名约定(PascalCase)的属性名是相当标准的,因此对这些对象也是如此。

value
不是这些div的属性。你确定你不是指
innerHTML
innerText
?我很确定,我不想要文本,而是属性值。好的,我明白了。将
(“value”)
替换为
(“value”)
,出于某种原因,所有属性的第一个字母都是大写的。我猜watin将DOM元素反序列化为对象,并且由于使用这种命名约定的属性名是非常标准的,所以它是这样做的。对不起,我想在最后一条消息中这样说的。我在
Console.WriteLine(lang.GetAttributeValue(“Value”))上设置了一个断点行,并进行调试,注意到所有其他属性和属性都是这样的,并尝试了一下。如果你想接受我的评论作为回答,我可以发表我的评论。