无法找到eBayAPIInterfaceService

时间:2013-01-24 09:04:25

标签: c# ebay

我似乎无法获得最基本的Ebay Api Call工作。我正在尝试做这里的教程:

http://developer.ebay.com/DevZone/xml/docs/HowTo/FirstCall/MakingCallCSharp.html

但是我不断收到错误信息:

“找不到类型或名称空间'eBayAPIInterfaceService'(您是否缺少using指令或程序集引用?)

(使用Visual Studio 2012)

我添加了服务参考http://developer.ebay.com/webservices/latest/ebaySvc.wsdl

我确保添加using语句。所有其他ebay Api对象都被识别 CustomSecurityHeaderType,GeteBayOfficialTimeRequestType和GeteBayOfficialTimeResponseType未显示为错误。它似乎只是eBayAPIInterfaceService

我已经搜索过这个问题的解决方案了,似乎其他人在过去遇到过这个问题,但我找不到任何解决方案。

2 个答案:

答案 0 :(得分:7)

据我所知,这段代码应该有效:

eBayAPIInterfaceClient service = new eBayAPIInterfaceClient("eBayAPI");

// Set credentials
CustomSecurityHeaderType requesterCredentials = new CustomSecurityHeaderType();
requesterCredentials.eBayAuthToken = "yourToken";    // use your token
requesterCredentials.Credentials = new UserIdPasswordType();
requesterCredentials.Credentials.AppId = appId;
requesterCredentials.Credentials.DevId = devId;
requesterCredentials.Credentials.AuthCert = certId;

// Make the call to GeteBayOfficialTime
GeteBayOfficialTimeRequestType request = new GeteBayOfficialTimeRequestType();
request.Version = "405";
GeteBayOfficialTimeResponseType response = service.GeteBayOfficialTime(ref requesterCredentials, request);
Console.WriteLine("The time at eBay headquarters in San Jose, California, USA, is:");
Console.WriteLine(response.Timestamp);

我没有eBay API密钥或其他任何东西,所以我无法真正测试它。

答案 1 :(得分:4)

如果您找到此页面,那么您正在寻找API hello world示例的错误位置。这个例子有一个更新版本,你就是这样找到的:

从eBay下载并安装eBayDotNET40sdk817.msi文件(如果你还没有,你还需要这样做):https://go.developer.ebay.com/developers/ebay/documentation-tools/sdks/dotnet

然后,您将在硬盘上找到两个示例教程: C:\ Program Files \ eBay \ eBay .NET SDK v817 Release \ Tutorials \ C#

这两个教程是: Tutorial_HelloWorld.doc, Tutorial_ConsoleAddItem.doc

我尝试了add-item教程,只需复制和粘贴代码就可以了。我没有尝试过hello world教程,但我可以看到它是一个更新版本,不使用eBayAPIInterfaceClient或eBayAPIInterfaceService。

作为旁注:您需要添加到项目中的COM引用位于C:\ Program Files \ eBay。

最后,如果您希望Sebastian的精彩答案(上图)中的代码能够正常工作,那么不要忘记将requestURL放在实例化eBayAPIInterfaceClient的地方,如下所示:

eBayAPIInterfaceClient service = new eBayAPIInterfaceClient("eBayAPI", requestURL);

(我试着编辑他的答案但是没有用)

祝你好运! :)