Вы можете использовать этот метод:
String.prototype.jsonToDate = function () {try {var date; eval (("date = new" + this) .replace (/ \ // g, '')); Дата возврата; } catch (e) {return new Date (0); }};
Версия .NET 4.0 сделала большое изменение в способе сборки ссылок на базу. Ранее эталонная сборка была простой копией сборки времени выполнения, той, которая хранится в GAC. Это, однако, вызвало некоторые болезненные проблемы. Примечательна перегрузка WaitHandle.WaitOne(int)
, она была добавлена в обновление .NET 2.0 с пакетом обновления 2 (ака .NET 3.5). Программисты использовали его, не заметив, что это добавленный метод , номер версии сборки mscorlib все еще был 2.0.0.0. Но затем они обнаружили, что их программа завершилась неудачей при запуске на неподдерживаемой версии .NET 2.0. Очень неприятный kaboom, MissingMethodException без подсказки, почему такой общий метод может отсутствовать.
Чтобы предотвратить этот разрыв, сборки ссылок .NET 4.0 сохраняются отдельно, в разделе «% programfiles%\reference Assemblies ", как вы узнали. И они - специальные сборки, они содержат только метаданные со всеми ИЛ. Вот почему сборка намного меньше.
Microsoft теперь может улучшить код .NET 4 и добавить общедоступные классы и методы, не вызывая такого рода поломки. И сделали это обильно, обновления 4.01, 4.02 и 4.03 отправлены с момента выпуска оригинала 4.0.
Причина, по которой у вас возникают проблемы с классом DataContractSerializerSetting
, легко объясняется, она просто не появляется в контрольной сборке. Он добавлен, вероятно, в одном из этих дополнительных обновлений. И вы не должны пытаться, ваша программа будет ломаться на машине, у которой нет обновления. Вы должны подождать до .NET 4.5, версии, которая добавила его в ссылочную сборку. Вы можете вызвать DLL Hell, если хотите.