سؤال

أنا أحاول أن تنفذ إوبداتابل.

خطأ 1 ' ويبرول1.إنفوماناجر 'لا تنفذ واجهة عضو' النظام.البيانات.الخدمات.قابل للتحديث.كليرتشانجيس ()' جميع الأخطاء التي أحصل عليها تقول إنني لا أقوم بتنفيذ جميع أعضاء الواجهة ، لكنني أقوم بتنفيذ بعض ليس كل شيء بالطبع.أنا لم أضع رمز حفرة آمل أن تتمكن من فهم.

  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
    }

}

}

هل كانت مفيدة؟

المحلول

إنها واجهة ، لذلك يجب عليك تنفيذ جميع الأعضاء-سواء كنت تريد ذلك أم لا.

لن يختفي هذا الخطأ حتى تقوم بتنفيذ الواجهة بالكامل.يمكنك أن تفعل ما تريد في نطاق الطريقة التي تنفذ ، ويقول حتى رفع NotImplementedException على سبيل المثال - ولكن هذا هو التنفيذ الخاص بك حتى يكون المترجم سعيدا.

لن أتغاضى عن الجهل (لا يزال يتعين عليك تعلم هاوس و لماذا) لكنني سأقدم نصيحة قد تساعد في تعلمك ، وإذا لم يكن هناك شيء آخر ، الإنتاجية المستقبلية:

من داخل فيسوال ستوديو ، عندما يكون لديك ملف رمز الفئة مفتوحة وهو لتنفيذ واجهة ثم هل يمكن أن يكون فس يبصقون رمز بالنسبة لك...

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

من القائمة المنسدلة يجب أن ترى الخيار Implement Interface 'IMyInterface', ، انقر فوقه وفويل!!وسوف تولد تلقائيا الهيئات طريقة الهيكل العظمي بالنسبة لك.

نصائح أخرى

لا أفهم ما هو السؤال.إذا قمت بتنفيذ واجهة ، فيجب عليك تنفيذ جميع الطرق في تلك الواجهة.وإلا فإن المترجم سوف يعطي خطأ.

أعتقد أن الخطأ واضح: أنت لا تقوم بتنفيذ جميع أعضاء الواجهة ، وهو أمر مطلوب بالطبع.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top