Hi!
I want to save some data with DDS, but keep having NotSupported exceptions when using linq querries.
I have done it with Entity Framework, but I wanted to migrate to Episerver API.
Is it even possible with the Episerver querry provider?
Code example:
public class MyConfiguration
{
public int MyNumber { get; set; }
public ICollection<MyPage> ChoosedPages { get; set; }
public ICollection<MyLanguage> ChoosedLanguages { get; set; }
}
public class MyPage
{
public bool IsSelected { get; set; }
public string GUID { get; set; }
}
public class MyLanguage
{
public bool IsSelected { get; set; }
public string LanguageName { get; set; }
}
public class Testing
{
public void Test ()
{
var configuration = new MyConfiguration ()
{
MyNumber = 1,
ChoosedPages = new List<MyPage> ()
{
new MyPage()
{
IsSelected = true,
GUID = "aaaa"
},
new MyPage()
{
IsSelected = true,
GUID = "bbbb"
},
new MyPage()
{
IsSelected = false,
GUID = "cccc"
}
},
ChoosedLanguages = new List<MyLanguage> ()
{
new MyLanguage()
{
IsSelected = true,
LanguageName = "en"
},
new MyLanguage()
{
IsSelected = false,
LanguageName = "sk"
},
new MyLanguage()
{
IsSelected = true,
LanguageName = "ru"
}
}
};
using ( var store = DynamicDataStoreFactory.Instance.GetOrCreateStore(typeof( MyConfiguration ) ))
{
store.Save ( configuration );
var config = store.Items<MyConfiguration> ()
.Include ( m=> m.ChoosedPages )
.FirstOrDefault ( m => m.MyNumber == 1 &&
m.ChoosedPages.Any ( p => p.IsSelected ));
if( config != null )
config.ChoosedLanguages = new List<MyLanguage>();
}
}
}
This compiles, but throws 'Method 'Any' Not supported' exception.
Please help.