UserController
およびUserInfo
クラスを使用するには、必要なプロバイダーを構成する必要があります。これを行う最も簡単な方法は、Web サイトの作業構成を使用し、アプリを DNN モジュールとして実装することです。ただし、必要な DLL および構成セクションを DNN サイトからコンソール アプリケーションにコピーし、DNN ソースを使用して問題をデバッグすることもできます。
この場合、ソースは、データ アクセスにキャッシング プロバイダーとデータ プロバイダーを使用するプロファイル プロバイダーによってプロパティがサポートされているため、UserInfo
オブジェクトのFirstName
プロパティの設定が失敗したことを伝えます。FirstName
デフォルトでは、 profile は、およびをDNNProfileProvider
使用してプロファイルのプロパティとデータを取得する によって実装されます。が呼び出されると、新しいオブジェクトのプロファイル プロパティ定義も取得されます。それが投げられる理由です。FileBasedCachingProvider
SqlDataProvider
UserInfo
ProfileController.GetUserProfile
NullReferenceException
DNN 5.6.3 の対応するプロパティは次のとおりです。
ユーザー情報.vb
<SortOrder(1), MaxLength(50), Required(True)> _
Public Property FirstName() As String
Get
Return Profile.FirstName
End Get
Set(ByVal Value As String)
Profile.FirstName = Value
End Set
End Property
<Browsable(False)> _
Public Property Profile() As UserProfile
Get
'implemented progressive hydration
'this object will be hydrated on demand
If _Profile Is Nothing Then
_Profile = New UserProfile
ProfileController.GetUserProfile(Me)
End If
Return _Profile
End Get
Set(ByVal Value As UserProfile)
_Profile = Value
End Set
End Property