0

我有一个 WCF 服务,它实现了一个接口方法来保存这样的实体:

IFinantialTxService svc = BaseServiceLayer.CreateChannel<IFinantialTxService>
SomeEntity cur = GetCurrentObject() as SomeEntity;
svc.SaveFinTxName(cur);

好的,现在“cur”对象是一个由客户端用户创建和填充的新实体,它有一个身份字段和一个时间戳,插入后将由数据库填充。我如何将这两个字段反映给客户?我应该通过引用传递实体吗?或者我可以在保存后立即从数据库中获取一个新实例吗?或者我应该将它们作为输出返回还是从服务返回值?任何想法我将不胜感激。

4

1 回答 1

1

您不能在 WCF 中通过引用发送对象。WCF 作为跨进程边界发送数据的任何技术都不支持这一点。您发送的任何对象都会被序列化(转换为 XML、JASON、二进制流,具体取决于您的绑定),并在从客户端发送到服务器或从服务器发送到客户端时反序列化。

您应该将带有填充字段的实体发送回客户端,而不是void.

替换这个:

void SaveFinTxName(SomeEntity cur);

用这条线:

SomeEntity SaveFinTxName(SomeEntity cur);
于 2012-08-13T01:10:09.123 回答