是否有可用于跟踪用户活动的框架?

时间:2011-11-14 14:25:13

标签: c# logging synchronization sql-server-ce metrics

在我开始编写自己的自定义类之前,我想知道是否已经有一个框架可供使用。

这适用于Winform / WPF应用程序。我将存储诸如电池电量,WiFi强度,硬盘驱动器信息,RAM信息等内容。除此之外,我还需要记录用户当时正在做的事情,例如“登录”,“退出” ,'点击某个按钮'等。

我会将此信息持久保存到本地的SqlCe数据库,最终会同步到服务器以进行调试/报告。

重用一些已有的代码会很棒。

感谢大家的帮助!

2 个答案:

答案 0 :(得分:1)

您没有提到您正在使用的语言,但我假设您的帖子中的C#标记为.Net。在这种情况下,您可以使用log4net记录用户活动和其他任何有用的数据。它支持记录到数据库以及许多其他格式。

答案 1 :(得分:0)

您是否考虑过.net中的Membership / Roles / Profile提供程序类。这些.net类通常用于ASP.net应用程序,但实际上它们是一个集合存储过程和类库,允许您使用Web应用程序跟踪用户配置文件和活动。甚至可以确定用户当前是否登录。

您可以使用以下命令创建表和存储过程,以支持您要查找的功能。

ASP.NET SQL Server Registration Tool

您必须在app.config文件中包含一个System.Web部分,其中包含以下子节点,以便您的应用程序可以有效地使用这些类。此外,yoiu必须在您的引用和“使用”语句中引用System.Web.Security库。

<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>