我一直在想Sitefinity Custom Membership。我看到它确实覆盖了一些用于创建用户和获取用户的基本方法。但我无法看到更新是如何进行的。
修改(2017-10-02):
假设我检索了>>> print( ' '.join(sorted(sorted(_str.split(' ')), key=foo)) )
128 256 3217 555
个用户,包含用户A,用户B和用户C.我通过以下方式更新了用户A实例:
Enumerable
我希望 userManagerCustom = UserManager.GetManager("myUserManagerCustom");
IEnumerable<User> users = userManagerCustom.GetUsers().AsEnumerable();
User userA = users.First();
userA.SetUserName("UserA_ch");
userManagerCustom.SaveChanges()
能够更新。不幸的是,事实并非如此。编译userA
的源代码没有运气,因为它使用OpenAccess来跟踪更改。
更新以MembershipDataProvider
方式处理。这对于处理外部来源的更新非常困难(例如,通过RESTApi提供的用户 - 甚至创建一个支持EntityFramework的自定义成员资格提供程序也会以糟糕的实现方式结束)。
CommitTransaction
基本上,我想要一个具体的最佳实践来正确处理Sitefinity自定义成员资格提供程序的更新。提出他们的支持我只得到一个有点无用的答案,然后继续关闭票。