Для ответа на точку 3 установка, которая заставляет все блоки в папке мусорного ведра быть загруженными на первом доступе, может быть найдена в файле C:\winnt\Microsoft.NET\Framework\v2.0.50727\CONFIG\web.config (в зависимости от среды). Извлечение сокращения из того файла:
<system.web>
<compilation>
<assemblies>
<add assembly="*" />
</assemblies>
</compilation>
</system.web>
Все блоки, которые соответствуют подстановочному знаку, загружаются как часть начальной компиляции.
Путем изменения web.config для приложения ( НЕ глобальный DotNet один), чтобы включать блок веб-сервиса и исключить подстановочное соответствие, кажется, что приложение может функционировать, если дополнительные зависимости отсутствуют:
<system.web>
<compilation>
<assemblies>
<remove assembly="*" />
<add assembly="Main.Application.WebService, Version=1.0.0.0, Culture=neutral, PublicKeyToken=YOURKEYHERE" />
</assemblies>
</compilation>
</system.web>
Мы все еще экспериментируем с этим так не уверенным, если это полностью решает вопрос или имеет какие-либо необычные побочные эффекты.
Вы пробовали использовать GeneratedBy.Identity вместо GeneratedBy.Increment?
You can also try:
Id(f => f.ID, "OID").GeneratedBy.Native()
This works for me in SQLite & SQL Server.
] Вы можете попробовать использовать [] seqhilo[] в зависимости от вашей системы базы данных.[
].