protected void Button1_Click(object sender, EventArgs e)
{
MemoryStream stream = new MemoryStream();
StreamReader reader = new StreamReader(stream); GetReportRequest request = new GetReportRequest();
request.ReportId = "24537536063";
request.Merchant = sellerId;
request.MWSAuthToken = mwsAuthToken;
request.Report = stream;
ltMsg.Text = InvokeGetReport(request); string text = reader.ReadToEnd();
stream.Dispose();
stream.Close();
reader.Dispose();
reader.Close(); DataTable dt = ConvertReport2DT(text);
GridView1.DataSource = dt;
GridView1.DataBind(); //Response.Write(text);
} public static string InvokeGetReport(GetReportRequest request)
{
StringBuilder builder = new StringBuilder();
try
{
MarketplaceWebService.MarketplaceWebServiceConfig config = new MarketplaceWebServiceConfig();
config.ServiceURL = serviceURL;
MarketplaceWebService.MarketplaceWebService service = new MarketplaceWebServiceClient
(accessKey, secretKey, appName, appVersion, config); GetReportResponse response = service.GetReport(request); builder.AppendFormat("Service Response");
builder.AppendFormat("============================================================================="); builder.AppendFormat(" GetReportResponse");
if (response.IsSetGetReportResult())
{
builder.AppendFormat(" GetReportResult");
GetReportResult getReportResult = response.GetReportResult;
if (getReportResult.IsSetContentMD5())
{
builder.AppendFormat(" ContentMD5");
builder.AppendFormat(" {0}", getReportResult.ContentMD5);
}
}
if (response.IsSetResponseMetadata())
{
builder.AppendFormat(" ResponseMetadata");
ResponseMetadata responseMetadata = response.ResponseMetadata;
if (responseMetadata.IsSetRequestId())
{
builder.AppendFormat(" RequestId");
builder.AppendFormat(" {0}", responseMetadata.RequestId);
}
} builder.AppendFormat(" ResponseHeaderMetadata");
builder.AppendFormat(" RequestId");
builder.AppendFormat(" " + response.ResponseHeaderMetadata.RequestId);
builder.AppendFormat(" ResponseContext");
builder.AppendFormat(" " + response.ResponseHeaderMetadata.ResponseContext);
builder.AppendFormat(" Timestamp");
builder.AppendFormat(" " + response.ResponseHeaderMetadata.Timestamp); }
catch (MarketplaceWebServiceException ex)
{
builder.AppendFormat("Caught Exception: " + ex.Message);
builder.AppendFormat("Response Status Code: " + ex.StatusCode);
builder.AppendFormat("Error Code: " + ex.ErrorCode);
builder.AppendFormat("Error Type: " + ex.ErrorType);
builder.AppendFormat("Request ID: " + ex.RequestId);
builder.AppendFormat("XML: " + ex.XML);
builder.AppendFormat("ResponseHeaderMetadata: " + ex.ResponseHeaderMetadata);
}
return builder.ToString();
} #region 报告字符串转换成DataTable
/// <summary>
/// 报告字符串转换成DataTable
/// </summary>
/// <param name="reportMsg">报告字符串</param>
/// <returns></returns>
public static DataTable ConvertReport2DT(string reportMsg)
{
DataTable dt = new DataTable();
try
{
//\t \r\n
if (reportMsg.Contains("\r\n"))
{
string[] rows = reportMsg.Split(new string[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);
//第一行表头
if (rows[0].Contains("\t")) //制表符
{
string[] columns = rows[0].Split('\t');
for (int i = 0; i < columns.Length; i++)
{
if (!dt.Columns.Contains(columns[i]))
{
dt.Columns.Add(columns[i]);
}
}
}
//第二行开始数据
for (int i = 1; i < rows.Length; i++)
{
string[] datas = rows[i].Split('\t');
DataRow dr = dt.NewRow();
for (int j = 0; j < datas.Length; j++)
{
dr[j] = datas[j];
}
dt.Rows.Add(dr);
dr = null;
}
}
}
catch { }
return dt;
}
#endregion

最新文章

  1. Guidance of Set up FTP Server
  2. C# 接口应用及意义
  3. java String.getBytes()编码问题——String.getBytes(charset)
  4. javascript耐人寻味
  5. Asp.net项目因Session阻塞导致页面打开速度变慢
  6. php缓存小技巧
  7. 菜鸟的jQuery源码学习笔记(一)
  8. 京东的SSO
  9. 网站waf检测
  10. C#之基础
  11. golang标准库 context的使用
  12. Android 正则表达式验证手机号码
  13. javascript--面试题
  14. 解决 HttpWebResponse.GetResponse()一直提示超时
  15. EXTENDED LIGHTS OUT (高斯消元)
  16. GBDT理论知识总结
  17. 为Python加入默认模块搜索路径
  18. SQL与NoSQL的CRUD对照
  19. Nuget~打包时添加powershell初始化脚本
  20. 关于一些blog优化

热门文章

  1. docker在CentOS7下部署指南
  2. POJ 3463 最(次)短路条数
  3. [js高手之路]Node.js模板引擎教程-jade速学与实战1
  4. 第二次作业:结对编程,四则运算的GUI实现
  5. JAVA课程设计--简易计算器(201521123022 黄俊麟)
  6. Markdown 模板
  7. apache: apache-tomcat-6.0.35完整下载
  8. expect实现scp/ssh-copy-id非交互
  9. 参考:Python 调试方法
  10. Servlet第二篇【Servlet调用图、Servlet细节、ServletConfig、ServletContext】