1

如何使用 Lightswitch 创建和访问 ProfileProvider 的新属性?

我试过这个:修改了 Web.config/configuration/system.web/ 中的下一部分

<profile enabled="True" defaultProvider="AspNetProfileProvider">
  <providers>
    <clear />
    <add name="AspNetProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="_IntrinsicData" applicationName="MyApplication" />
  </providers>
  <properties>
    <add name="FullName" />
    <add name="MyCustomProperty" />
  </properties>
</profile>

然后我重建解决方案,当我尝试使用它时,我可以获得 FullName 但不是 MyCustomProperty:

var a = ServerApplicationContext.CreateContext().Application.User.FullName; // Work
var b = ServerApplicationContext.CreateContext().Application.User.MyCustomProperty; // Don't work

当我转到 ..User.FullName 的定义时,我会转到一个自动生成的类,其中有 Property FullName 但没有 MyCustomProperty:

public class ServerUser : ClaimsPrincipal, IUserInternal, IUser, IPrincipal, IIdentity
{
    public AuthenticationType AuthenticationType { get; protected set; }
    public IEnumerable<string> EffectivePermissions { get; }
    public string FullName { get; protected set; }
    public bool IsAnonymous { get; }
    ...
}

我猜重建不是代码自动生成的方式,但不知道如何实现这一点。

谢谢。

4

0 回答 0