我目前在使用EF4.1时遇到了一些问题.SQL的生成似乎与我期望基于我的类生成的内容不匹配.我有以下课程(这只是一个较小的一个较大的集合,但是,这是我似乎有问题的地方)...
public class CustomEntityContext : DbContext
{
public CustomEntityContext()
:base(ConfigurationManager.ConnectionStrings["DBConnection"].ConnectionString) {}
public DbSet<Person> People { get; set; }
public DbSet<Occurrence> Occurrences { get; set; }
public DbSet<OccurrenceSecurity> OccurrenceSecurities { get; set; }
}
[DataContract(IsReference = true)]
[Table("Occurrence")]
public class Occurrence
{
[DataMember] public int ID { get; set; }
[DataMember] public string Number { get; set; }
[DataMember] public bool? IsMOR { get; set; }
[DataMember] public bool? IsConfidential { get; set; }
[DataMember] public int? IncidentID { get; set; …Run Code Online (Sandbox Code Playgroud) 我目前正在开发Windows服务托管的WCF服务.其中一种方法具有URI,该URI设置为接收来自支付提供商的回调.这是接口合同......
[OperationContract]
[WebInvoke(UriTemplate = "3DSecureCallback?TrxId={id}", Method = "POST", BodyStyle = WebMessageBodyStyle.Bare)]
void ThreeDSecureCallBack(string id, Stream body);
Run Code Online (Sandbox Code Playgroud)
我遇到的这个问题是第三方提供商发布到我们的服务.我必须提供一个回调网址.因此我们可以协调付款,我们提供带有包含交易ID的查询字符串参数的URL.
在开发此服务期间,回拨已成功.(这是在添加Steam参数之前)
但是,我们现在处于需要解析发布数据的阶段.这是第二个'Stream'参数被添加到方法签名的点.
我得到的问题是我收到以下异常......
For request in operation ThreeDSecureCallBack to be a stream the operation must have a single parameter whose type is Stream.
Run Code Online (Sandbox Code Playgroud)
通过删除id参数,只有流,我们可以获取发布数据.这在实践中不起作用,因为我还需要查询字符串参数.
有人可以建议如何解决这个问题吗?我真的很茫然.
提前致谢,
大卫