Да, это вполне возможно и вполне рутинно.Просто помните, что с сервера вы получаете копию, а не саму оригинальную переменную.Вы не можете извлекать и возражать, изменять его на клиенте и ожидать, что сервер получит обновление.Вы должны отправить объект обратно на сервер, чтобы сделать это.
Если вы сохраняете null в myvariable, вам нужно установить точку останова в вашем s_DoWorkCompleted, чтобы убедиться, что 1) он достигнут и 2) eРезультат не сам по себе.Если e.Result имеет значение null, вам нужно вернуться в службу, чтобы убедиться, что она работает.