3

IUpdatableを実装しようとしています。

エラー1'WebRole1.InfoManager'はインターフェイスメンバーを実装していません'System.Data.Services.IUpdatable.ClearChanges()'取得したすべてのエラーは、すべてのインターフェイスメンバーを実装していないことを示していますが、もちろんすべてではありません。ホールコードは入れていませんので、ご理解いただければ幸いです。

  using System;
  using System.Collections.Generic;
  using System.Linq;
  using System.Web;
  using System.Data.Services;
  using Microsoft.WindowsAzure;
  using Microsoft.WindowsAzure.ServiceRuntime;
  using Microsoft.WindowsAzure.StorageClient;

  namespace WebRole1
  {
     public class InfoManager : IUpdatable
     {
      private TableServiceContext context;

    // To Generate DataConnectionString and svcClient
    private TableServiceContext GetContext()
    {
    //Implemented code
    }

    public CommentManager()
    {
        context = GetContext();
    }


    // To get my table infos
    public IQueryable<Info> Infos
    {
        get
        {
            return context.CreateQuery<Info>("Infos").AsTableServiceQuery();
        }
    }
   // Creating the resource and cheking the compatibility of the type and do an add Object 

    public Object CreateResource(string containerName, string fullTypeName)
    {
        //Implemented Code
    }

    // Return the instance of the resource represented by the object 
    public Object ResolveResource(Object resource)
    {
        return resource;
    }

    public void SaveChanges()
    {
        context.SaveChangesWithRetries();
    }

    public void setValue(Object targetResource, string propertyName, Object propertyValue)
    {
    //Implemented Code
    }

}

}

4

3 に答える 3

8

これはインターフェースであるため、必要かどうかに関係なく、すべてのメンバーを実装する必要があります。

このエラーは、インターフェイス全体を実装するまで解消されません。実装しているメソッドの範囲内で、NotImplementedExceptionたとえばインスタンスを作成するなど、必要なことを実行できますが、それ実装であるため、コンパイラーは満足しています。

私は無知を容認しません(あなたはまだ方法と理由を学ぶべきです、私はあなたの学習と、他に何もないとしても、将来の生産性に役立つかもしれないヒントを提供します:

Visual Studio内から、インターフェイスを実装するためのクラスコードファイルを開いている場合は、VSにコードを吐き出させることができます...

class MyClass : IMyInterface // <- hover mouse and click the drop down that appears

ドロップダウンからオプションが表示されたらImplement Interface 'IMyInterface'、それをクリックしてボイラー!骨格メソッド本体が自動的に生成されます。

于 2011-03-18T14:42:51.180 に答える
1

質問が何なのかわかりません。インターフェイスを実装する場合は、そのインターフェイスにすべてのメソッドを実装する必要があります。そうしないと、コンパイラはエラーを出します。

于 2011-03-18T14:42:17.717 に答える
1

エラーは明らかだと思います。もちろん、すべてのインターフェイスメンバーを実装しているわけではありません。

于 2011-03-18T14:43:19.063 に答える