2011-11-14 12 views
8

独自のカスタムクラスの作成を始める前に、既に使用するフレームワークがあるかどうか疑問に思っていました。ユーザーアクティビティを追跡するためのフレームワークはありますか?

これは、Winform/WPFアプリケーション用です。私はバッテリーレベル、WiFiの強さ、ハードドライブの情報、RAMの情報などを格納することになります。それらと一緒に、私はまた、ユーザーが 'ログオン'、 'ログアウト' 「特定のボタンをクリックしました」など。

私はこの情報をローカルにSqlCeデータベースに永続化し、最終的にデバッグ/レポート用のサーバーに同期させます。

既に利用可能なコードを再利用するとよいでしょう。

ありがとうございました!

答えて

1

あなたはどの言語を使用しているかは言及していませんが、あなたの投稿のC#タグの.Netと仮定しています。その場合、log4netを使用して、ユーザーの活動やその他の有用なデータを記録することができます。他の多くのフォーマットとともにデータベースへのロギングをサポートしています。

+0

はい。私はC#を使用しています。私はすでにlog4netを使用しており、それも考慮していません。それは別の良い選択肢です。 – ABR

0

メンバーシップ/ロール/プロファイルプロバイダのクラスは、.NETで検討しましたか。これらの.netクラスは、通常ASP.netアプリケーションで使用されますが、本質的にはコレクションストアドプロシージャとクラスライブラリであり、Webアプリケーションでユーザープロファイルとアクティビティを追跡できます。ユーザーが現在ログインしているかどうかを判断する機能さえあります。

あなたが探しているfuncitonalityをサポートするために、テーブルとストアドプロシージャを作成するには、次を使用することができます。

ASP.NET SQL Server Registration Tool

あなたは、あなたのアプリケーションが効果的にクラスを利用できるように、次の子ノードを使用してapp.configファイルでsystem.webセクションを含める必要があります。また、yoiuはSystem.Web.Securityライブラリを参照し、 "using"ステートメントを参照する必要があります。

<system.web> 
    <membership defaultProvider="MembeshipProvider"> 
     <providers> 
     <clear/> 
     <add connectionStringName="Test" name="MembeshipProvider" 
      type="SqlMembershipProvider" /> 
     </providers> 
    </membership> 
    <roleManager enabled="true" defaultProvider="RoleProvider"> 
     <providers> 
     <add connectionStringName="Test" name="RoleProvider" type="System.Web.Security.SqlRoleProvider" /> 
     </providers> 
    </roleManager> 
    <profile defaultProvider="ProfileProvider"> 
     <providers> 
     <clear/> 
     <add name="ProfileProvider" type="System.Web.Profile.SqlProfileProvider" 
      connectionStringName="Test"/> 
     </providers> 
     <properties> 
     <add name="FirstName" type="System.String"/> 
     <add name="LastName" type ="System.String"/> 
     <add name="Email" type="System.String"/> 
     . 
    . 
    . 
     </properties> 
    </profile> 
</system.web> 
+0

ありがとうございます!私はそれを調べて、必要なものが含まれているかどうかを調べるつもりです。私はそれをまったく考慮しませんでした;) – ABR

+0

私はlog4Netのラッパーとして機能する独自のクラスを作成しました。これはうまくいくと思われますが、私は今、効率を疑問視しています。 – ABR

関連する問題