gpt4 book ai didi

c# - Magento 的 api v2 中的多个 complexFilter

转载 作者:太空宇宙 更新时间:2023-11-03 22:24:24 24 4
gpt4 key购买 nike

目前我在从 c# 界面使用新的 Magento soap v2 时遇到了一些困难。

使用 php 我可以做这样的事情:

$params["created_at"]["from"] = date("Y-m-d H:i:s",Functions::convert_time($dataDa));
$params["created_at"]["to"] = date("Y-m-d H:i:s",Functions::convert_time($dataA));
MageInterface::getSingleton()->shipmentList($params);

在这种模式下,我能够毫无问题地找到从 $dataDa 到 $dataA 创建的订单列表。然而,对于 C#,似乎只有最后一个选择器起作用。

我的代码:

var cpf = new complexFilter[2];
cpf[0] = new complexFilter
{
key = "created_at",
value = new associativeEntity
{
key = "to",
value = uxDataA.DateTime.ToString("yy-MM-dd HH:mm:ss")
}
});
cpf[1] = new complexFilter
{
key = "created_at",
value = new associativeEntity
{
key = "from",
value = uxDataDa.DateTime.ToString("yy-MM-dd HH:mm:ss")
}
});
var filters = new filters();
filters.complex_filter = cpf;
var risultato = mage.salesOrderList(sessionKey, filters);

在这种模式下,只考虑 created_at->from 标准(这就像第二个复杂的过滤器用相同的键覆盖前一个)。想法?

提前致谢。

最佳答案

这对我有用:

private filters addFilter(filters filtresIn, string key, string op, string value)
{
filters filtres = filtresIn;
if (filtres == null)
filtres = new filters();

complexFilter compfiltres = new complexFilter();
compfiltres.key = key;
associativeEntity ass = new associativeEntity();
ass.key = op;
ass.value = value;
compfiltres.value = ass;

List<complexFilter> tmpLst;
if (filtres.complex_filter!=null)
tmpLst = filtres.complex_filter.ToList();
else tmpLst = new List<complexFilter>();

tmpLst.Add(compfiltres);

filtres.complex_filter = tmpLst.ToArray();

return filtres;
}

然后打电话

{
Mage_Api_Model_Server_V2_HandlerPortTypeClient clientSoap = new Mage_Api_Model_Server_V2_HandlerPortTypeClient();

string sessionId = clientSoap.login(LOG, PASS);
filters filtres = new filters();

filtres = addFilter(filtres, "status", "eq", "processing");
filtres = addFilter(filtres, "created_at", "from", "2014-09-07 08:00:00");
filtres = addFilter(filtres, "created_at", "to", "2014-09-07 00:00:00");

salesOrderEntity[] lst = clientSoap.salesOrderList(sessionId, filtres);
}

关于c# - Magento 的 api v2 中的多个 complexFilter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1920922/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com