我想为将继承此接口的所有类创建一个具有默认方法(Save,Update,Delete,Select,SelectByID)的接口。如何在接口中创建一个可以接受带对象的任何类名的方法?
interface IMasterActions
{
int Save(Class_Name obj);
int Update(Class_Name obj);
}
public class Student
{
public int RollNo{get;set;}
public String Name{get;set;}
}
public class Book
{
public String Author{get; set;}
public decimal Price{get; set;}
}
public class StudentManager:ImasterActions
{
public int Save(Student std)
{
........
}
}
public class BookManager:IMasterActions
{
public int Save(Book book)
{
.............
}
}
答案 0 :(得分:4)
您应该使用泛型来实现接口实现的动态特性。您的界面和实现将定义如下:
public interface IMasterActions<T> where T : class
{
int Save(T obj);
int Update(T obj);
}
public class StudentManager:IMasterActions<Student>
{
public int Save(Student std)
{
... .....
}
}
答案 1 :(得分:0)
您可以使用泛型来实现此目的。
interface IMasterActions<T>
{
int Save(T obj);
int Update(T obj);
}
public class StudentManager:ImasterActions<Student>
{
public int Save(Student std)
{
........
}
}
此处有更多详情:http://msdn.microsoft.com/en-us/library/kwtft8ak.aspx