Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net LINQ to SQL不会检索存储在数据库中的最新(更新)版本_Asp.net_Database_Linq To Sql_Sql Server Express_Updates - Fatal编程技术网

Asp.net LINQ to SQL不会检索存储在数据库中的最新(更新)版本

Asp.net LINQ to SQL不会检索存储在数据库中的最新(更新)版本,asp.net,database,linq-to-sql,sql-server-express,updates,Asp.net,Database,Linq To Sql,Sql Server Express,Updates,当使用linqdatasource更新我的sqlexpress数据库时,所有内容都显示正常,但当我尝试使用以下方法手动检索内容时: public static IQueryable<MarkingScheme> listMarkingSchemes(string moduleID, string academicYear) { return from m in feedbackDB.MarkingSchemes where m.moduleID

当使用linqdatasource更新我的sqlexpress数据库时,所有内容都显示正常,但当我尝试使用以下方法手动检索内容时:

public static IQueryable<MarkingScheme> listMarkingSchemes(string moduleID, string academicYear)
{
    return
        from m in feedbackDB.MarkingSchemes
        where m.moduleID == moduleID && m.academicYear == academicYear
        orderby m.schemeID descending
        select m;
}
我得到了更新版本!!!
有没有人知道为什么会发生这种情况,以及我在进行手动查询时如何始终获取最新版本的数据?我尝试将dataclasses.dbml文件中的“update check”选项设置为“始终”和“WhenChanged”,但似乎不起作用…

我终于让它起作用了,我必须手动将datacontext中所有受影响的列的自动同步方法设置为“始终”


再次感谢@Josh的帮助,非常感谢

我终于让它工作了,我必须手动将datacontext中所有受影响的列的自动同步方法设置为“始终”


再次感谢@Josh的帮助,非常感谢

提交更改是否在每个路径中都被调用?LINQ从DataContext对象的缓存中传递行。因此,如果在发生更改的每个场景中都没有调用SubmitChanges,那么您将获得原始数据,而不是预期的修改数据。内容是通过linqdatasource更新的,所以我假设是这样的!选择性查询“select new{m.schemeID,m.assignmentName}”看到了更新,而仅仅使用“select m”并没有看到更新,这不是很奇怪吗?更新的内容似乎在一段时间后,或者在我更新datacontext时显示出来。。。但是“延迟加载”选项设置为false…嗯…我想知道这是否是一个延迟加载问题?如果您列出第一个方法的结果,它是否显示了更改?我曾尝试将其作为数组()返回,现在尝试作为列表()返回,但仍然没有获得更新的内容。是否在每个路径中都调用SubmitChanges?LINQ从DataContext对象的缓存中传递行。因此,如果在发生更改的每个场景中都没有调用SubmitChanges,那么您将获得原始数据,而不是预期的修改数据。内容是通过linqdatasource更新的,所以我假设是这样的!选择性查询“select new{m.schemeID,m.assignmentName}”看到了更新,而仅仅使用“select m”并没有看到更新,这不是很奇怪吗?更新的内容似乎在一段时间后,或者在我更新datacontext时显示出来。。。但是“延迟加载”选项设置为false…嗯…我想知道这是否是一个延迟加载问题?如果您列出第一个方法的结果,它是否显示了更改?我曾尝试将其作为Array()返回,现在尝试将其作为List()返回,但仍无法获取更新的内容。。
public static IQueryable listNames(string moduleID, string academicYear)
{
    return
        from m in feedbackDB.MarkingSchemes
        where m.moduleID == moduleID && m.academicYear == academicYear
        orderby m.schemeID descending
        select new { m.schemeID, m.assignmentName };
}