Еще раз мне нужна помощь в вызове метода класса Domain Service из silverlight.
Это в некоторой степени связано с моим вчерашним вопросом, который был решен.Еще раз спасибо!Для тех, кто заинтересован, мой вчерашний вопрос можно найти здесь:
Использование членства в ASP.net для получения aspnet_Users в silverlight
Теперь на мой текущий вопрос.
У меня есть следующий метод в классе обслуживания домена, который называется MembershipData
[RequiresRole("Managers")]
public void DeleteUser(MembershipServiceUser user)
{
Membership.DeleteUser(user.UserName);
}
- Этот код взят из учебника kylemc
Теперь, как мне вызвать этот методиз Silverlight?
Я понял из вчерашнего вопроса, что
public IEnumerable<MembershipServiceUser> GetAllUsers()
нужно вызывать, задав запрос, затем выполнив запрос и затем вызвав OnGetAllUsersLoaded, когда результаты вернутся.
В чем я не уверен, вам нужно вызывать метод таким образом из-за его возвращаемого типа?
Очевидно, что public void DeleteUser (MembershipServiceUser user) не имеет возвращаемого типа, поэтому не может быть вызван втаким образом.
Не представляется возможным сделать:
MembershipDataContext context = new MembershipDataContext();
MembershipServiceUser user = new MembershipServiceUser();
user.UserName = "bob";
context.DeleteUser(user);
Но тогда как мне использовать метод DeleteUser?
Любой помощникМы очень признательны.
С уважением,
Нил
Обновление
Спасибо за информацию HiTech.У меня есть еще одна проблема, которую мне нужно решить.Возможно, я все еще что-то не правильно делаю.
Сейчас я создаю новый экземпляр MembershipServiceUser, назовем его msu.Затем присваивая msu.UserName и msu.Email пользовательские данные, и после этого вызывая
context.MembershipServiceUsers.Remove(msu)
, где context является контекстом моей доменной службы MembershipData, и я проверил, что
context MembershipServiceUsers results
делаетиметь мою информацию пользователя.Однако затем я получаю следующую ошибку
«Указанная сущность не содержится в этом EntitySet».
Я уверен, что данные в msu верны, поэтому есть идеи, почему я получаю эту ошибку?Большое спасибо
Обновление 2
Я на правильном пути с чем-то вроде следующего ...
MembershipServiceUser usr = (from a in context.MembershipServiceUsers
where a.UserName == "bob"
select a).First();
context.MembershipServiceUsers.Remove(usr);
context.SubmitChanges(DeleteUser_completed, null);
Или это выключено?потому что в моем обратном вызове DeleteUser_completed (так что SubmitOperation) so.HasError = true, в то время как ChangeSet -> RemovedEntities = 1, а вот так, в результате EntitiesInError "перечисление не дало никаких результатов"
Еще раз спасибо за помощь, чтобы направить меня в правенаправление.