DataMovieDataContext context = new DataMovieDataContext();
           
            //添加
            //context.category.InsertOnSubmit(new category() { category_id = 5, category_name = "惊悚片" });
            //context.SubmitChanges();
            //更新
            category c = context.category.Where(t => t.category_id == 4).First();
            c.category_name = "剧情片";
            
            context.SubmitChanges();
 
            var result =(from s in context.category 
                                    select s).ToList();
            foreach (var item in result)
                Console.WriteLine(item.category_id + "--------" + item.category_name);打印出来的数据是变了的 但是数据库里面 没有改变表主键也是设置了的 麻烦大家看看是什么原因 [Column(Storage="_category_id", DbType="Int NOT NULL", IsPrimaryKey=true)]
public int category_id
{
get
{
return this._category_id;
}
set
{
if ((this._category_id != value))
{
this.Oncategory_idChanging(value);
this.SendPropertyChanging();
this._category_id = value;
this.SendPropertyChanged("category_id");
this.Oncategory_idChanged();
}
}
}

解决方案 »

  1.   

    在数据库方面开监视,看看是否真正执行成功了这个sql,是否有其他的约束导致执行失败了
      

  2.   

    我用的.NET 新建的一个数据库文件 里面只有一张表category {category_id(主键),category_name}
      

  3.   

    从代码中看  已经  context.SubmitChanges();
    不存在你所说的问题 数据库怎么连的? 确认你查看对了库
    如果是连接的MDF文件  是否去除掉了只读属性
      

  4.   


    <connectionStrings> 
            <add name="Linq_to_SQl.Properties.Settings.MovieConnectionString1"
                connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\App_Data\Movie.mdf;Integrated Security=True;User Instance=True"
                providerName="System.Data.SqlClient" />
        </connectionStrings>数据库值这样连接的  文件不是只读的执行这样的语句 也不行context.ExecuteCommand("insert into category values(5,'惊悚片')");
      

  5.   

    在资源管理器中打开网站所在文件夹。
    “工具”——“文件夹选项”——“查看”,关闭“使用简单文件共享”。
    右击网站文件夹——“共享和安全”,添加“Everyone”用户组,并开启“写入”权限。
    右击虚拟目录中的“App_Data”——“属性”,去掉“只读”属性。
    http://topic.csdn.net/u/20090110/23/7b2a183b-cee2-4aa0-922f-488c7ba1e68b.html
      

  6.   

    数据库是否一致
    Server=.\SQLExpress;AttachDbFilename=|DataDirectory|mydbfile.mdf; Database=dbname;Trusted_Connection=Yes;
      

  7.   

    AttachDbFilename=|DataDirectory|\App_Data\Movie.mdf;这个太奇怪了。如果mdf直接在App_Data下的话。只要:AttachDbFilename=|DataDirectory|\Movie.mdf; 就可以了。难道你的App_Data下还有个App_Data目录?
      

  8.   

    修改应用程序池为本地系统,修改文件夹everyone权限