none
换成SL3 JULY版后,原来正常的Update方法.编译时提示有错误:Domain operation entry 'UpdateCompany' must take exactly one parameter. RRS feed

  • 问题

  • void Attach(Company current);
    void Attach(Company current, Company original);
    void UpdateCompany(Company current);
    void UpdateCompany(Company current, Company original);

    或者

    void Update(Company current);
    void Update(Company current, Company original);

    上面的代码都提示:
    Domain operation entry 'UpdateCompany' must take exactly one parameter.
    aaaa
    2009年8月7日 6:27

答案

  • 问题解决,原来是两个参数,要去掉重载
    void Update(Company current);
    void Update(Company current, Company original);

    只保留
    void Update(Company current, Comp
    aaaa
    • 已标记为答案 2009年8月7日 7:19
    2009年8月7日 7:18

全部回复

  • 我这边用了数据层,没有这个方法this.ChangeSet.GetOriginal(currentProduct)呀.

    public void UpdateProduct(Product currentProduct)
    {
    this.Context.Products.Attach(currentProduct, this.ChangeSet.GetOriginal(currentProduct));
    }

    我这边的代码是这样的,service里传递NcsDataContext到这个Ncs.LinqToSqlDataProvider项目的数据操作代码中:
     public class CompanyRepository : ICompanyRepository
        {
            private NcsDataContext context;

            public CompanyRepository(NcsDataContext context)
            {
                this.context = context;
            }
            public void Update(Company current)
            {
                ncs_Company dbCurrentCompany = projectNcs_Company(current);

                //this.context.GetTable<ncs_Company>().Attach(projectNcs_Company(current));
                this.context.ncs_Companies.Attach(dbCurrentCompany, this.context.geto
            }
       }


    aaaa
    2009年8月7日 7:00
  • 问题解决,原来是两个参数,要去掉重载
    void Update(Company current);
    void Update(Company current, Company original);

    只保留
    void Update(Company current, Comp
    aaaa
    • 已标记为答案 2009年8月7日 7:19
    2009年8月7日 7:18
  • 你是说你的DomainService没有继承 LinqToSqlDomainService<T> ?

    如果你是从这个继承的,那你就能从LinqToSqlDomainService<T>.ChangeSet.GetOriginal()中得到Origianl.
    否则你直接用Attach(current)好了。

    public void Update(Company current)
            {
              
      this.context.ncs_Companies.Attach(current);
            }

    2009年8月7日 7:21