diff --git a/src/ServiceStack.OrmLite/OrmLiteContext.cs b/src/ServiceStack.OrmLite/OrmLiteContext.cs index 9286ea83c..c3b50880c 100644 --- a/src/ServiceStack.OrmLite/OrmLiteContext.cs +++ b/src/ServiceStack.OrmLite/OrmLiteContext.cs @@ -98,13 +98,13 @@ internal static void SetItem(string key, T value) public static OrmLiteState CreateNewState() { var state = new OrmLiteState(); - Instance.Items["OrmLiteState"] = state; + OrmLiteState = state; return state; } public static OrmLiteState GetOrCreateState() { - return (Instance.Items["OrmLiteState"] as OrmLiteState) + return (OrmLiteState as OrmLiteState) ?? CreateNewState(); } @@ -112,7 +112,10 @@ public static OrmLiteState OrmLiteState { get { - return Instance.Items["OrmLiteState"] as OrmLiteState; + if (Instance.Items.Contains("OrmLiteState")) + return Instance.Items["OrmLiteState"] as OrmLiteState; + else + return null; } set { @@ -152,4 +155,4 @@ public override string ToString() return "State Id: {0}".Fmt(Id); } } -} \ No newline at end of file +}