powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Remoting-сборка на клиенте
5 сообщений из 5, страница 1 из 1
Remoting-сборка на клиенте
    #35810027
Remoting-приложение на клиенте требует присутствия сборки, аналогичной той, которая вызывается с сервера через вызов Activator.GetObject(...).
"Аналогичная" потому, что в коде клиентской версии должен остаться интерфейс и описания вызываемых методов (код самих методов можно вырезать - это иногда нужно для тех методов, которые я не хочу показывать для взломщиков кода).

Вопрос: как на стадии проекта в VS2005 указать, чтобы для сервера была полноценная сборка, а для клиента "урезанная"? Может существуют какие директивы, описав которые в коде, затем их включать или выключать?
...
Рейтинг: 0 / 0
Remoting-сборка на клиенте
    #35810095
Q
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Q
Гость
Разделить описания интерфейсов и реализацию сервиса на две сборки да и все?
...
Рейтинг: 0 / 0
Remoting-сборка на клиенте
    #35810134
remoting
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владимир Б.
Вопрос: как на стадии проекта в VS2005 указать, чтобы для сервера была полноценная сборка, а для клиента "урезанная"?
Сделай сборку с одним классом, который будет один в один, как серверный (тот, который получаешь через Activator.GetObject), только с пустыми методами, и подпихни эту заглушку клиенту. Нэймспейсы и название сборки тоже должны быть одинаковыми.
...
Рейтинг: 0 / 0
Remoting-сборка на клиенте
    #35811467
remotingСделай сборку с одним классом, который будет один в один, как серверный (тот, который получаешь через Activator.GetObject), только с пустыми методами, и подпихни эту заглушку клиенту. Нэймспейсы и название сборки тоже должны быть одинаковыми.
Я так и делаю. Точнее, сначала генерю серверную сборку, затем вырезаю временно код (потом его восстанавливаю) из методов (делаю их пустыми), после чего генерю клиентскую сборку.
Заранее сделать заглушку не могу, поскольку неконтролируемы бывают изменения в составе методов, объявленных в интерфейсе - вдруг добавлю какой метод. Я не хочу за этим следить. Я хочу узнать - есть ли возможность "виртуально вырезать" код на момент генерации сборки, чтобы компилятор "не видел" этого кода в принципе - например, присвоить переменной значение false, если нужен весь код, и true - если сделать методы "пустыми", и далее в методах встроить какие-то конструкции, которые по этой переменной определяли, позволить ли компилятору видеть код внутри этих конструкций. Перед компиляцией определяем значение этой переменной и ВСЁ. Сменили значение - и можем генерить другой вид сборки (серверную (полную) или клиентскую (очищенную)).
...
Рейтинг: 0 / 0
Remoting-сборка на клиенте
    #35811895
remoting
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владимир Б.Заранее сделать заглушку не могу, поскольку неконтролируемы бывают изменения в составе методов, объявленных в интерфейсе - вдруг добавлю какой метод. Я не хочу за этим следить. Я хочу узнать - есть ли возможность "виртуально вырезать" код на момент генерации сборки, чтобы компилятор "не видел" этого кода в принципе - например, присвоить переменной значение false, если нужен весь код, и true - если сделать методы "пустыми", и далее в методах встроить какие-то конструкции, которые по этой переменной определяли, позволить ли компилятору видеть код внутри этих конструкций. Перед компиляцией определяем значение этой переменной и ВСЁ. Сменили значение - и можем генерить другой вид сборки (серверную (полную) или клиентскую (очищенную)).
То, что ты хочешь, называется "условная компиляция": в свойствах проекта определи какой-нибудь дефайн (Conditional compilation symbols) и дальше в коде навставляй где там надо ифдефов, но, имхо, я не вижу, чем это проще заранее собранной заглушки. Если по ходу работы возникает потребность в изменении интерфейсов, значит архитекторы ваши че-то схалтурили на этапе проектирования системы (если такой этап, конечно, был :)).
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Remoting-сборка на клиенте
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]