3

我已经导入了一个 wsdl,现在我拥有了所有的客户端类。我想为类添加一个额外的(计算的)属性以用于 wpf 绑定。我希望计算的属性与从服务器返回的属性(并基于)一起显示(在网格中)

对我来说,合乎逻辑的事情是创建一个部分类,与 wcf 生成的类相同的命名空间和类名,并将新的计算属性添加到这个部分类

    namespace TestClient.WSCompanySearch  //same namespace as the generated class from wsdl
    {
        public partial class Company  //same class returned by wsdl
        {
            public bool IsValid
            {
                get {

                    if ((this.CloseDate < DateTime.Now) || (this.Rooms == 0))
                    {
                        return false;
                    }
                    else
                    {
                        return true;
                    }
                }
            }                       
        }
    }

这个额外的属性肯定存在,如果我对其进行编码,我可以看到它,但是当我绑定时,就好像自定义属性被忽略了一样。getter 中的断点没有被调用,因此表明它没有被调用。

4

3 回答 3

0

有同样的问题,我必须添加一个私有 set 方法才能反序列化对象

于 2014-03-04T12:07:47.583 回答
0

我的方法最终是正确的。只是一个组合

  1. 我的逻辑在新属性中不正确
  2. 我需要关闭“只是我的代码”调试才能使新类中的断点正常工作。我猜 VS 认为它是生成代码的一部分并且不想调试它
于 2012-12-14T11:24:49.050 回答
0

您可能能够通过对需要计算属性的列使用转换器来获得相同的结果。

于 2012-12-14T08:03:35.457 回答