我已经通过OTA接口使用VBscript成功连接到QC。在VbScript中,我有以下代码来过滤掉缺陷并将其加载到列表中。
BugFilter.Filter("BG_STATUS") = "Not Canceled and NOT Closed"
BugFilter.Filter("BG_PROJECT") = "Business*"
Set BugList = BugFilter.NewList()
上述内容在Vbscript中完美无缺。
在C#.NET(4.0)中,我能够成功连接到QC但是当我尝试应用过滤器时,它会给我一个错误..
TDConnection qcc = new TDConnection();
qcc.InitConnectionEx(sr);
qcc.ConnectProjectEx("XXXX", "------", "----", "-----");
if (qcc.Connected)
{
Console.WriteLine("connected");
BugFactory bf = (BugFactory)qcc.BugFactory;
bf.Filter["BG_STATUS"] = "Not Canceled and NOT Closed";
bf.Filter["BG_PROJECT"] = "Business*";
List bugs = (List)bf.NewList(bf.Filter);
在最后一行代码中,它给出了以下错误“无法转换参数0以调用NewList。”
我是C#的新手,有人可以帮我吗?
答案 0 :(得分:3)
尝试bg.Filter.text()
你需要检查方法,因为我在java中这样做。但是这个名字有一种方法。我通常这样做是这样的:
List bugs = (List)bg.NewList();
答案 1 :(得分:1)
我通常使用Filter对象的.Text属性而不是过滤器对象本身将字符串传递给bug工厂。
例如,我已经成功处理了这样的过滤:
var tdFilter = (TDFilter)bf_filter;
tdFilter["BG_STATUS"] = "Not Canceled and NOT Closed";
tdFilter["BG_PROJECT"] = "Business*";
var bugs = bf.NewList(tdFilter.Text);