DataContext CompiledQuery抛出NullReferenceException

时间:2015-02-19 08:55:41

标签: c# nullreferenceexception datacontext compiled-query

我将DataContext作为与数据库的连接,并使用预编译查询(CompiledQuery)。 这是我的代码:

    public static RichTextValue GetRichTextValue(this DataManager db, string key, string lang = LobbyHelper.DefaultLanguage) {
        return CompiledQueryExtensions.RichTextValueByKeyAndLang(db, key, lang);//NullReferenceException is thrown here
    }

其中DataManager扩展了DataContext。 DataManager静态实例在整个项目中共享。

public static class CompiledQueryExtensions
{
    public static Func<DataManager, string, string, RichTextValue> RichTextValueByKeyAndLang =
            CompiledQuery.Compile((DataManager db, string key, string lang) =>
                    db.RichTextValues.SingleOrDefault(x => !x.Deleted && !x.RichText.Deleted && !x.Language.Deleted
                             && x.RichText.Key == key && x.Language.Code == lang));
}

最令我困惑的是,当通常请求页面时(通过浏览器URL)一切都很好,但是当我使用ajax请求PartialView并将其放在页面上时,我得到了一个例外。

请协助

0 个答案:

没有答案