Вы должны использовать обозначение квадратной скобки, когда -
var ob = {
1: 'One',
7 : 'Seven'
}
ob.7 // SyntaxError
ob[7] // "Seven"
var ob = {
'This is one': 1,
'This is seven': 7,
}
ob.'This is one' // SyntaxError
ob['This is one'] // 1
var ob = {
'One': 1,
'Seven': 7,
}
var _Seven = 'Seven';
ob._Seven // undefined
ob[_Seven] // 7
Я продолжил работу над библиотекой, о которой упоминалось в Сериализации и десериализации деревьев выражений в C #
Похоже, что проект был оставлен (2008), но я немного поработал над он и теперь работает с .NET 4.0 и Silverlight. Я сделал исправления ошибок для их кода, а также сделал его более независимым от DAL.
Другим вариантом является проект сериализации сериализации на code.msdn.com - похоже, будет больше того, что нужно здесь?
UPD: теперь http://archive.msdn.microsoft.com/exprserialization
посмотрите мою новую библиотеку Serialize.Linq . Он сериализует выражения linq для json, xml и двоичных файлов.
Службы WCF RIA разрешают сериализацию IQuerayble<T>
Не в полном объеме; однако образец Dynamic LINQ может немного помочь. Вы можете, конечно, сериализовать выражение в строку (в какой-то степени - дженерики выглядят немного отвратительно), но встроенного парсера нет.
Я работал над проектом для сериализации выражений. Все в порядке, и вы можете использовать его. http://www.codeproject.com/Articles/851187/ServicePredicateBuilder-for-creating-Serializable
Проект GitHub / Nuget называется MetaLinq , целью которого является упрощение работы с выражением tress.
Он преобразует между нормальными выражениями и «EditableExpressions», которые являются изменяемыми и полностью Serializable, поэтому их можно использовать с Json, Xml, Binary и т. д.
Также проверьте это сообщение для получения дополнительной информации.