Я следил за учебником this, и я пытаюсь использовать базу данных Access в консольном приложении C#.Ссылка на объект требуется для нестатического поля
У меня есть 2 классов:
class Ac
{
OleDbConnection connection;
OleDbCommand command;
private void ConnectTo()
{
connection = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.15.0;Data Source=D:\Info\csharp\socket\ef\accesstest\accesstest\bin\Debug\Database.accdb;Persist Security Info=False");
command = connection.CreateCommand();
}
public Ac()
{
ConnectTo();
}
public void Insert(string a, string b)
{
try
{
command.CommandText = "INSERT INTO Persons (nName, nNamee) VALUES (\"" + a + "\", \"" + b + "\");";
command.CommandType = System.Data.CommandType.Text;
connection.Open();
command.ExecuteNonQuery();
}
catch (Exception)
{
throw;
}
finally
{
if (connection != null)
{
connection.Close();
}
}
}
}
И
namespace accesstest
{
public class MainClass
{
Ac f = new Ac();
public static void Main()
{
f.Insert("ab", "ac");
Console.WriteLine("\n\nPress enter to close...");
Console.ReadLine();
}
}
}
И я получаю «Ссылка на объект требуется для нестатическая поля, метода или свойства«accesstest.MainClass. е '». Я пытаюсь удалить статический, но не работаю, скажем, Main должен pe static.
Любые идеи для меня? Спасибо !
Make '' f' статический статический Ac f = новый Ac(); '. –
Большое спасибо! –
Или переместите его внутри метода 'Main'. –