Я новичок в C # и не очень хорошо знаю, как следует устанавливать соединение с базой данных MySql .
У меня есть таблица с именем packages , в которой содержится модель, для которой я создал:
namespace CService.Models
{
public class Package
{
public int id { get; set; }
public String name { get; set; }
public String description { get; set; }
public Boolean tracking { get; set; }
public int senderCityId { get; set; }
public int destinationCityId { get; set; }
public int senderId { get; set; }
public int receiverId { get; set; }
public Package(int id, string name, string description, Boolean tracking, int senderCityId,
int destinationCityId, int senderId, int receiverId)
{
this.id = id;
this.name = name;
this.description = description;
this.tracking = tracking;
this.senderCityId = senderCityId;
this.destinationCityId = destinationCityId;
this.senderId = senderId;
this.receiverId = receiverId; }
}
}
Я пытаюсь сделать оператор выбора и присвоить результатв локальный список :
MySqlConnection conn = new MySqlConnection("server = localhost; user id = root; database=assignment_four; password=Mysqlpassword123");
public List<Package> getPackages()
{
List<Package> packages = new List<Package>();
conn.Open();
MySqlCommand cmd = conn.CreateCommand();
cmd.CommandText = "SELECT * from packages";
MySqlDataReader reader = cmd.ExecuteReader();
try
{
conn.Open();
reader = cmd.ExecuteReader();
while (reader.Read())
{
packages.Add(new Package(
reader.GetInt32(reader.GetOrdinal("id")),
reader.GetString(reader.GetOrdinal("name")),
reader.GetString(reader.GetOrdinal("description")),
reader.GetBoolean(reader.GetOrdinal("tracking")),
reader.GetInt32(reader.GetOrdinal("senderCity_id")),
reader.GetInt32(reader.GetOrdinal("destinationCity_id")),
reader.GetInt32(reader.GetOrdinal("sender_id")),
reader.GetInt32(reader.GetOrdinal("receiver_id"))
));
}
reader.Close();
}
catch (Exception exp)
{
throw;
}
finally
{
conn.Close();
}
return packages;
Однако, когда я пытаюсь запустить это как службу WCF, я получаю следующую ошибку:
Ошибкадобавить услугу.Метаданные службы могут быть недоступны.Убедитесь, что ваша служба работает и предоставляет метаданные.
Служба работала до добавления вышеуказанного кода, поэтому я предполагаю, что проблема заключается в моем подходе к извлечению данных.