How can I create a user for ASP.Net/Umbraco SQL membership with iPhone and WCF?

So, I’m afraid for several days now, trying to just create a new user using the WCF service using the Umbraco Memberhip Provider. Can someone tell me if I go crazy, if it is impossible to do, or if I lose sight of something that I need to add to my WCF service for this to work. My WCF script is embedded in my site in IIS 7.5 using the .NET Framework 4.0.

Now I can return JSON strings from WCF, such as input validation. And I will use this from the iPhone app.

But as soon as everything is checked, and I try to run the following lines ...

  MembershipCreateStatus status;    
  MembershipUser newUser = Membership.CreateUser(email, pw1, email, "n", "n", false, out status);

  if (newUser != null)
  {
    string newUserGuid = System.Guid.NewGuid().ToString("N");
    MemberProfile mp = MemberProfile.GetUserProfile(email);
    mp.AuthGuid = newUserGuid;
    mp.FirstName = fname;
    mp.LastName = lname;
    mp.Birthday = bDay;
    mp.DisplayRealName = intName;
    mp.DisplayBirthday = intBirthday;
    mp.Save();
    Roles.AddUserToRole(email, "Client");
    return @"Valid:User Added";
  }else
    return @"Error:Invalid:Error Occurred";
  }

I get the following error ...

. : " ​​ ". . . :

umbraco.cms.businesslogic.member.Member.GetMemberFromLoginName(String loginName) umbraco.providers.members.UmbracoMembershipProvider.CreateUser(String , String, email, String passwordQuestion, String passwordAnswer, Boolean isApproved, providerUserKey, MembershipCreateStatus & ) System.Web.Security.Membership.CreateUser(String , String, email, String passwordQuestion, String passwordAnswer, Boolean isApproved, providerUserKey, MembershipCreateStatus & ) System.Web.Security.Membership.CreateUser(String , String, email, String passwordQuestion, String passwordAnswer, Boolean isApproved, MembershipCreateStatus & ) MyDll.Web.AUsers.RegisterUser(String email, String pw1, String pw2, String fname, String lname, Int32 intName, String , Int32 intBirthday) MyDll.Web.get.Users.Register(String email, String p1, String p2, String fname, String lname, String displayname, String birthdate, String ) SyncInvokeRegister (Object, Object [], []) System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke( instance, Object [], Object [] & ) System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc & rpc) System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5 (MessageRpc & rpc) System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage41 (MessageRpc & rpc) System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage4 (MessageRpc & rpc) System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31 (MessageRpc & rpc) System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage3 (MessageRpc & rpc) System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage2 (MessageRpc & rpc) System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage11 (MessageRpc & rpc) System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage1 (MessageRpc & rpc) System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)

" -" :

<system.serviceModel>
    <bindings>
      <webHttpBinding>
        <binding name="jsonBinding" maxReceivedMessageSize="2147483647">
          <security mode="Transport">
            <transport clientCredentialType="None" />
          </security>
        </binding>
      </webHttpBinding>
    </bindings>
    <services>
      <service name="MyDll.Users">
        <endpoint address="/get/Users.svc" behaviorConfiguration="jsonBehavior"
          binding="webHttpBinding" bindingConfiguration="jsonBinding"
          name="UsersService" contract="MyDll.Web.get.Users" />
      </service>
    </services>
    <behaviors>
      <endpointBehaviors>
        <behavior name="jsonBehavior">
          <enableWebScript />
        </behavior>
      </endpointBehaviors>
    </behaviors>
    <serviceHostingEnvironment
      multipleSiteBindingsEnabled="true" />
  </system.serviceModel>

, . 10, . !

+3
1

umbraco Member.cs

HttpContext.Current.Trace.Warn("No member with loginname: " + loginName + " Exists");

, ​​.

web.config system.serviceModel add:

<serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>

[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]

. http://msdn.microsoft.com/en-us/library/aa702682.aspx

http://our.umbraco.org/forum/developers/api-questions/18465-Access-Umbraco-Content-from-WCF-Service

+2

Source: https://habr.com/ru/post/1794302/


All Articles