Передача System.Data.Linq.Table в универсальную функцию

Я пытаюсь создать универсальную функцию, которая принимает System.Data .Linq.Table .

Интерфейс универсальной функции

 public int Get<T>(MyDataContext db, System.Data.Linq.Table<T> table, string PropertyValue) where T: IMatchable
 {
     T prop = table.FirstOrDefault<T>(p => p.Name.ToLower() == PropertyValue.ToLower());  
     if (prop != null)
     {
        return prop.ID;
     }
 }

, чтобы я мог получить доступ к свойству ID

public interface IMatchable
{
    int ID { get; set; }
}

Моя ошибка

Тип 'T' должен быть ссылочным типом чтобы использовать его как параметр 'TEntity' в универсальном типе или метод 'System.Data.Linq.Table'

Я не уверен, что я делаю неправильно.

6
задан John Saunders 14 February 2011 в 04:00
поделиться