Я создаю интерфейс, и я требую, чтобы он мог обрабатывать разные типы списков, что я должен использовать?Общий список в интерфейсе
Am используя классы, которые я использую в списках List<Person>
, List<Charge>
, List<Other>
Я попробовать этот интерфейс, но его не правильный Generic List Type, или тип я использую
interface iGeneric
{
void Add(object obj);
void Delete(object obj);
void Update(object obj);
object View(object obj);
}
а также класс заряда, наследующий интерфейс iGeneric
public class Charge : iGeneric
{
public Charge()
{
Description = "na";
}
public void Add(object obj)
{
//Add a new charge to the database
List<Charge> myCharge = new List<Charge>();
string cn = ConfigurationHelper.getConnectionString("Scratchpad");
using (SqlConnection con = new SqlConnection(cn))
{
con.Open();
try
{
using (SqlCommand command = new SqlCommand("INSERT INTO tblCharge ([Description],[Amount]) VALUES (@Description, @Amount)", con))
{
command.Parameters.Add(new SqlParameter("Description", NewCharge.Description));
command.Parameters.Add(new SqlParameter("Amount", NewCharge.Amount));
command.ExecuteNonQuery();
}
MessageBox.Show("New Charge added successfully");
}
catch (Exception)
{
Console.WriteLine("Failed to insert new charge.");
}
}
В идеале я хотел бы установить каждый список и класс, когда я определ e Список i.e
List<Charge> myCharge = new List<Charge>();
List<Person> myPerson = new List<Person>();
List<Other> myOther = new List<Other>();
«его не нравится» - что это значит? Какое сообщение об ошибке? Какие наблюдения? 'Charge.Add' ожидает' object', но 'iGeneric.Add' ожидает' T'. Это невозможно компилировать. И что делает нижний блок кода (где вы инициализируете различные списки), чтобы сделать свой вопрос? –
Я изменил его, чтобы привести его в соответствие с тем, что я делал ... попробовал List T, но у меня не было правильного синтаксиса/команды. Блок внизу - это 3 списка, которые я хочу использовать через интерфейс. Интерфейс должен иметь возможность принимать любой список, который я передаю. – Ggalla1779
Я до сих пор не знаю, что «его не нравится» означает * специально *. Кроме того, я не уверен, что вы просите, и чего вы пытаетесь достичь. Пожалуйста, попробуйте уточнить свой вопрос. Например, в конце вы пишете: «В идеале я хотел бы установить каждый список и класс, когда я определяю Список i.e." Но следующий код-блок (инициализация списка) выглядит отлично, так что в чем проблема? –