0

WP7アプリを作成しています。

そのアプリでは、LINQtoSQLを使用してローカルデータベースを作成しています。私はこのようなクラスを作成しました:

[Table]
public class User
{
    [Column(
        IsPrimaryKey = true,
        IsDbGenerated = true,
        DbType = "INT NOT NULL Identity",
        CanBeNull = false)]
    public int Id { get; set; }

    [Column]
    public string FirstName { get; set; }

    [Column]
    public string LastName { get; set; }     
}

そして私は以下のようなデータコンテキストを持っています:

public class UserDataContext : DataContext
    {
        public static string connString = "Data Source=isostore:/Users.sdf";

        public UserDataContext(string connString)
            : base(connString)
        { }

        public Table<User> Users;
    }

以下のコードを使用してデータを保存しています:

User user = new User
            {
                FirstName = tbFirstName.Text,
                LastName = tbLastName.Text,
                CreatedOn = DateTime.Now
            };
using (var db = new UserDataContext(UserDataContext.connString))
            {
                db.Users.InsertOnSubmit(user);
                db.SubmitChanges();
            }

しかし、ここで私の問題は次のとおりです。ユーザーリストを保存している間、「 1日間保存」「30日間」「永久」などのラジオボックスがあります。「1日」を選択した場合は1日保存する必要があり、ローカルデータベースのユーザーは1日後に削除され、「30日」を選択した場合は30日後に削除され、「永久」を選択した場合は削除されます。削除されません

これどうやってするの?

前もって感謝します。

4

1 に答える 1

0

テーブルに別の列を追加します(有効期限)。次に、単純なクエリでデータを消去します

DELETE FROM User    
WHERE (expiryDate < GETDATE())

Linq2Sqlでもこれを行うことができます

于 2012-02-15T18:16:26.003 に答える