ColdFusion中的ASP成员配置文件

ColdFusion中的ASP成员配置文件,coldfusion,coldfusion-9,membership-provider,asp.net-profiles,Coldfusion,Coldfusion 9,Membership Provider,Asp.net Profiles,我正在尝试复制ColdFusion中的ASP成员资格配置文件功能。基本上,我希望能够获取并保存属性值 为了了解我的基本需求,我有以下几点: table: aspnet_Profile UserID | PropertyNames | PropertyValuesString |...| LastUpdatedDate xyzxyz | FirstName:S:0:5:LastName:S:5:1: | SollyM |...| 2013-01-01 00:00:00.000 现在使用ASP.n

我正在尝试复制ColdFusion中的ASP成员资格配置文件功能。基本上,我希望能够获取并保存属性值

为了了解我的基本需求,我有以下几点:

table: aspnet_Profile
UserID | PropertyNames | PropertyValuesString |...| LastUpdatedDate
xyzxyz | FirstName:S:0:5:LastName:S:5:1: | SollyM |...| 2013-01-01 00:00:00.000
现在使用ASP.net,使用
profile.GetPropertyValue(“FirstName”)
将返回
Solly
profile.GetPropertyValue(“LastName”)
将返回
M

物业名称的解释如下:

LastName => PropertyName
S => String
5 => Starting Position
1 => Length
要保存新的
LastName
,请使用
profile.SetPropertyValue(“LastName”、“de Mots”)
,表格如下所示:

table: aspnet_Profile
UserID | PropertyNames | PropertyValuesString |...| LastUpdatedDate
xyzxyz | FirstName:S:0:5:LastName:S:5:7: | Sollyde Mots |...| 2013-01-02 00:00:00.000
我如何在ColdFusion中复制这一点


我已经试了两天多了。

我终于写了自己的CFC,可以从

有3个功能:

  • PasswordEncrypt
    =>如果我在CFM中对密码进行哈希运算以匹配成员身份时必须处理查询,那么这就是一个问题

  • ProfileGet(“UserId”、“PropertyName”)
    =>返回属性名的值

  • ProfileSet(“UserId”、“PropertyName”、“NewPropertyValue”)
    =>使用
    NewPropertyValue
    更新
    PropertyName

  • 请注意,
    ProfileGet
    ProfileSet
    仅处理配置文件的
    PropertyValuesString
    ,而不是
    PropertyValuesBinary
    。您可以对此进行扩展以获得更多信息。

    我终于编写了自己的CFC,可以从

    有3个功能:

  • PasswordEncrypt
    =>如果我在CFM中对密码进行哈希运算以匹配成员身份时必须处理查询,那么这就是一个问题

  • ProfileGet(“UserId”、“PropertyName”)
    =>返回属性名的值

  • ProfileSet(“UserId”、“PropertyName”、“NewPropertyValue”)
    =>使用
    NewPropertyValue
    更新
    PropertyName

  • 请注意,
    ProfileGet
    ProfileSet
    仅处理配置文件的
    PropertyValuesString
    ,而不是
    PropertyValuesBinary
    。您可以对此进行扩展以获得更多信息。

    这些配置文件数据存储在数据库中吗?是的。这就是我试图在MSSQL中复制
    aspnet\u Profile
    表的原因。
    PropertyNames
    PropertyValueString
    属于
    NTEXT
    类型
    UserID
    UNIQUEIDENTIFIER
    lastUpdateDate
    DateTime
    (我不担心)。“
    ”表示我没有使用的列。如果您可以利用它,ColdFusion就有。还是你要完全远离.NET?这太棒了。不,我不是在逃避。事实上,我正在编写内部CF系统的.NET版本以及.NET中所有与成员资格相关的函数。我必须在CF中复制这些函数,而不使用其他表。您是否尝试指定
    程序集
    ,并将其指向正确的DLL?在我之前提供的链接上阅读。这些配置文件数据存储在数据库中吗?是的。这就是我试图在MSSQL中复制
    aspnet\u Profile
    表的原因。
    PropertyNames
    PropertyValueString
    属于
    NTEXT
    类型
    UserID
    UNIQUEIDENTIFIER
    lastUpdateDate
    DateTime
    (我不担心)。“
    ”表示我没有使用的列。如果您可以利用它,ColdFusion就有。还是你要完全远离.NET?这太棒了。不,我不是在逃避。事实上,我正在编写内部CF系统的.NET版本以及.NET中所有与成员资格相关的函数。我必须在CF中复制这些函数,而不使用其他表。您是否尝试指定
    程序集
    ,并将其指向正确的DLL?请在我之前提供的链接上阅读。感谢您发布您的解决方案。在最终版本中,只需确保
    var/local
    scope所有函数局部变量。否则,如果cfc存储在共享作用域中,您将遇到奇怪的线程问题。另外,请确保使用
    cfqueryparam
    来防止sql注入。您能访问我的答案中提供的链接并更新代码吗?你不必登录。我想它会询问你的姓名和电子邮件,你可以编辑文件。我本来打算这么做的,但是。。本周我没有访问sql表的权限,不想因为无意中的输入错误而破坏工作代码;)。感谢您发布您的解决方案。在最终版本中,只需确保
    var/local
    scope所有函数局部变量。否则,如果cfc存储在共享作用域中,您将遇到奇怪的线程问题。另外,请确保使用
    cfqueryparam
    来防止sql注入。您能访问我的答案中提供的链接并更新代码吗?你不必登录。我想它会询问你的姓名和电子邮件,你可以编辑文件。我本来打算这么做的,但是。。本周我没有访问sql表的权限,不想因为无意中的输入错误而破坏工作代码;)。