データベースがあり、Save メソッドと Load メソッドの両方を簡単に実装できましたが、C# で名前を付けて保存メソッドを作成しようとすると、問題が発生します。この方法で変更を保存しようとすると、新しいファイルは作成されず、何も実行されないか、新しい名前を付けても元のファイルが上書きされます。
要約すると、.sdf ファイルを開き、変更を加えてから、新しい名前で保存します。それ、どうやったら出来るの?
私はそれを実際よりも簡単にしようとしていると推測しています-私はデータベースのプログラミングにかなり慣れていないので、ヒントをいただければ幸いです。
ありがとう!
ここで私の名前を付けて保存方法:
public static bool SaveDataAs(string fileName)
{
thisdb.dbFileName = Path.GetFileName(fileName);
thisdb.dbFilePath = Path.GetDirectoryName(fileName);
thisdb.connect();
thisdb.SaveChanges();
return true;
}
これが私の接続方法です:
public void connect()
{
string dbConnection = "Data Source=" + dbFilePath + "\\" + dbFileName;
if (!Directory.Exists(dbFilePath)) {
Directory.CreateDirectory(dbFilePath);
}
string dbProvider = "System.Data.SqlServerCe.4.0";
Database.DefaultConnectionFactory =
new System.Data.Entity.Infrastructure.SqlCeConnectionFactory(
dbProvider, dbFilePath, dbConnection);
}