Всякий раз, когда мне задают этот вопрос (освежители в моей команде), «почему (или иногда даже« что есть ») .a?», Я использую следующий ответ, который использует .zip в качестве аналогии.
«DotAy подобен zip-файлу всех dotOh, которые вы хотели бы связать при сборке exe / lib. Экономия дискового пространства, плюс не нужно вводить имена всех задействованных dotOh».
до сих пор это, кажется, заставило их понять. ;)
Вы можете попробовать использовать Environment.CurrentDirectory или AppDomain.CurrentDomain.BaseDirectory
Попробуйте использовать HostingEnvironment.ApplicationPhysicalPath .
Сначала добавьте в службу операцию по возврату текущего каталога. Пусть новая операция просто вернет Environment.CurrentDirectory. В клиенте проверьте, не удивлены ли вы текущим каталогом. При необходимости отрегулируйте.
Службы WCF по-прежнему имеют доступ ко многим тем же вещам, что и ваши страницы ASP.NET (поскольку, в конце концов, все еще есть HTTP-запрос и ответ). Вы все еще можете использовать Server.MapPath следующим образом:
HttpContext.Current.Server.MapPath(...)