asp.net – 通过邮件发送wcf服务消费表单数据
发布时间:2020-12-30 11:42:22 所属栏目:asp.Net 来源:互联网
导读:我读了一些关于这个的文章,我发现要获得wcf从我们添加的帖子请求中获取数据 [ServiceContract]public interface IService1 { [OperationContract] [WebInvoke( Method = POST, BodyStyle = WebMessageBodyStyle.Bare, UriTem
|
我读了一些关于这个的文章,我发现要获得wcf从我们添加的帖子请求中获取数据 [ServiceContract]
public interface IService1 {
[OperationContract]
[WebInvoke(
Method = "POST",BodyStyle = WebMessageBodyStyle.Bare,UriTemplate = "/GetData")]
void GetData(Stream data);
}
并在实施中 public string GetData( Stream input)
{
long incomingLength = WebOperationContext.Current.IncomingRequest.ContentLength;
string[] result = new string[incomingLength];
int cnter = 0;
int arrayVal = -1;
do
{
if (arrayVal != -1) result[cnter++] = Convert.ToChar(arrayVal).ToString();
arrayVal = input.ReadByte();
} while (arrayVal != -1);
return incomingLength.ToString();
}
我的问题是我应该怎样做,在表单请求中提交操作会发送到我的服务并消费? 在Stream参数中,我是否可以通过Request [“FirstName”]从表单中获取信息? 解决方法您的代码未正确解码请求正文 – 您正在创建一个字符串值数组,每个字符串值都包含一个字符.获取请求体后,您需要解析查询字符串(使用HttpUtility是一种简单的方法).下面的代码显示了如何正确获取正文和其中一个字段.public class StackOverflow_7228102
{
[ServiceContract]
public interface ITest
{
[OperationContract]
[WebInvoke(
Method = "POST",UriTemplate = "/GetData")]
string GetData(Stream data);
}
public class Service : ITest
{
public string GetData(Stream input)
{
string body = new StreamReader(input).ReadToEnd();
NameValueCollection nvc = HttpUtility.ParseQueryString(body);
return nvc["FirstName"];
}
}
public static void Test()
{
string baseAddress = "http://" + Environment.MachineName + ":8000/Service";
WebServiceHost host = new WebServiceHost(typeof(Service),new Uri(baseAddress));
host.Open();
Console.WriteLine("Host opened");
WebClient c = new WebClient();
c.Headers[HttpRequestHeader.ContentType] = "application/x-www-form-urlencoded";
Console.WriteLine(c.UploadString(baseAddress + "/GetData","FirstName=John&LastName=Doe&Age=33"));
Console.Write("Press ENTER to close the host");
Console.ReadLine();
host.Close();
}
} (编辑:东莞站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 我想列出我的下拉列表中的所有国家/地区,我在哪
- asp.net-mvc – 为什么在我的ASP MVC4应用程序中重定向资源
- asp.net 禁用viewstate在web.config里
- ASP.NET MVC与Webforms:替换WebForms控件
- 什么是在asp.net中301重定向更推荐的方法?
- asp.net-mvc – 从页面到局部视图的asp.net mvc参数
- 如何保护我的ASP.NET AJAX应用程序?
- ASP.NET Core使用SkiaSharp实现验证码的示例代码
- asp.net Web.config 详细配置说明
- 实体框架 – WebApi OData:$filter’any’或’all’查询不
推荐文章
站长推荐
- asp.net-mvc – 在ASP.NET MVC中实现工作单元的方
- ASP.Net 2中的上传文件在哪里?
- asp.net core webapi 服务端配置跨域的实例
- asp.net-mvc – 如何忽略ASP.NET MVC 4中特定Vie
- ASP.NET和System.Diagnostics跟踪 – 我错过了什
- asp.net-mvc – ASP.NET MVC Beta 1:DefaultMod
- asp.net-mvc – 不应加载引用程序集以执行
- asp.net-core – 编译netcoreapp1.0,代码包含#if
- asp.net – 通过邮件发送wcf服务消费表单数据
- 什么OverrideAuthenticationAttribute是为什么?
热点阅读
