Kentico UserInfoProvider 在控制台应用程序中未按预期工作

2024-03-15

此代码在 Kentico 网站中运行良好:

var users = UserInfoProvider.GetUsers();
for (int x = 0; x < users.Count(); x++
{
    UserInfo currentUser = users.ElementAt(x);
    currentUser.SetValue("AcceptsAlerts", equivalentSubscriber.Status != SubscriberStatus.Unsubscribed);
    UserInfoProvider.SetUserInfo(currentUser);
}

当我将代码移至控制台应用程序时,对 UserInfoProvider 的任何调用都会导致错误:“未找到对象类型‘cms.usersettings’”

对于获取用户的初始调用,我可以在控制台应用程序中执行以下操作:

DataSet usersds = new CMS.DataEngine.DataQuery("cms.user.selectall").Execute();

然后使用用户数据循环遍历数据集的 Table1:

UserInfo currentUser = new UserInfo(dtUsers.Rows[x]);

一切都很好并且工作正常,直到我将更新后的用户写回数据库。除了调用之外,我找不到其他写入数据的方法:

UserInfoProvider.SetUserInfo(currentUser);

有谁知道另一种保存用户数据的方法?或解决错误。该错误是运行时错误,据我所知,我已经引用了我需要的所有内容。我正在编辑的字段是添加到 cmsUser 表中的自定义字段。

使用信息语句:

using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Globalization;
using System.IO;
using System.Linq;
using System.Net;
using System.Web;
using CMS;
using CMS.CustomTables;
using CMS.DataEngine;
using CMS.Membership;

在开始从外部应用程序使用 Kentico CMS API 之前,请确保调用以下行:

CMS.DataEngine.ConnectionHelper.ConnectionString = "your connection string";
CMS.Base.SystemContext.WebApplicationPhysicalPath = Application.StartupPath;
CMS.DataEngine.CMSApplication.Init();

然后,您还可以使用 UserInfoProvider.GetUsers()对象查询 http://devnet.kentico.com/articles/kentico-8-technology-dataquery-api而不是使用DataQuery.Execute().

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Kentico UserInfoProvider 在控制台应用程序中未按预期工作 的相关文章

  • 如何进行带有偏差的浮点舍入(始终向上或向下舍入)?

    我想以偏置舍入浮动 要么总是向下 要么总是向上 代码中有一个特定的点 我需要这个 程序的其余部分应该像往常一样四舍五入到最接近的值 例如 我想四舍五入到最接近的 1 10 倍数 最接近 7 10 的浮点数约为 0 69999998807 但
  • Blazor 与 Razor

    随着 Blazor 的发明 我想知道这两种语言之间是否存在显着的效率 无论是在代码创建方面还是在代码的实际编译 执行方面 https github com SteveSanderson Blazor https github com Ste
  • 处理 fanart.tv Web 服务响应 JSON 和 C#

    我正在尝试使用 fanart tv Webservice API 但有几个问题 我正在使用 Json Net Newtonsoft Json 并通过其他 Web 服务将 JSON 响应直接反序列化为 C 对象 这里的问题是元素名称正在更改
  • ASP .NET MVC,创建类似路由配置的永久链接

    我需要帮助在 MVC 网站中创建类似 URL 路由的永久链接 Slug 已设置为 www xyz com profile slug 代码为 routes MapRoute name Profile url profile slug defa
  • TextBox 焦点的 WinForms 事件?

    我想添加一个偶数TextBox当它有焦点时 我知道我可以用一个简单的方法来做到这一点textbox1 Focus并检查布尔值 但我不想那样做 我想这样做 this tGID Focus new System EventHandler thi
  • ZLIB 解压缩

    我编写了一个小型应用程序 该应用程序应该解压缩以 gzip deflate 格式编码的数据 为了实现这一点 我使用 ZLIB 库 使用解压缩功能 问题是这个功能不起作用 换句话说 数据不是未压缩的 我在这里发布代码 int decompre
  • 获取从属性构造函数内部应用到哪个属性的成员?

    我有一个自定义属性 在自定义属性的构造函数内 我想将属性的属性值设置为属性所应用到的属性的类型 是否有某种方式可以访问该属性所应用到的成员从我的属性类内部 可以从 NET 4 5 using CallerMemberName Somethi
  • 如何用 kevent() 替换 select() 以获得更高的性能?

    来自Kqueue 维基百科页面 http en wikipedia org wiki Kqueue Kqueue 在内核和用户空间之间提供高效的输入和输出事件管道 因此 可以修改事件过滤器以及接收待处理事件 同时每次主事件循环迭代仅使用对
  • 在 C# 中将位从 ulong 复制到 long

    所以看来 NET 性能计数器类型 http msdn microsoft com en us library system diagnostics performancecounter aspx有一个恼人的问题 它暴露了long对于计数器
  • 是否有与 C++11 emplace/emplace_back 函数类似的 C# 函数?

    从 C 11 开始 可以写类似的东西 include
  • Xamarin Android:获取内存中的所有进程

    有没有办法读取所有进程 而不仅仅是正在运行的进程 如果我对 Android 的理解正确的话 一次只有一个进程在运行 其他所有进程都被冻结 后台进程被忽略 您可以使用以下代码片段获取当前正在运行的所有 Android 应用程序进程 Activ
  • 组合框项目为空但数据源已满

    将列表绑定到组合框后 其 dataSource Count 为 5 但组合框项目计数为 0 怎么会这样 我习惯了 Web 编程 而且这是在 Windows 窗体中进行的 所以不行combo DataBind 方法存在 这里的问题是 我试图以
  • “MyClass”的类型初始值设定项引发异常

    以下是我的Windows服务代码 当我调试代码时 我收到错误 异常 CSMessageUtility CSDetails 的类型初始值设定项引发异常 using System using System Collections Generic
  • Silverlight Datagrid:在对列进行排序时突出显示整个列

    我的 Silverlight 应用程序中有一个 DataGrid 我想在对该列进行排序时突出显示整个列 它在概念上与上一个问题类似 Silverlight DataGrid 突出显示整列 https stackoverflow com qu
  • gdb查找行号的内存地址

    假设我已将 gdb 附加到一个进程 并且在其内存布局中有一个文件和行号 我想要其内存地址 如何获取文件x中第n行的内存地址 这是在 Linux x86 上 gdb info line test c 56 Line 56 of test c
  • 如何在 GCC 5 中处理双 ABI?

    我尝试了解如何克服 GCC 5 中引入的双重 ABI 的问题 但是 我没能做到 这是一个重现错误的非常简单的示例 我使用的GCC版本是5 2 如您所见 我的主要函数 在 main cpp 文件中 非常简单 main cpp include
  • 如何查明CONFIG_FANOTIFY_ACCESS_PERMISSIONS是否启用?

    我想利用fanotify 7 http man7 org linux man pages man7 fanotify 7 html我遇到的问题是在某些内核上CONFIG FANOTIFY ACCESS PERMISSIONS不起作用 虽然C
  • boost::program_options:带有固定和可变标记的参数?

    是否可以在 boost program options 中使用此类参数 program p1 123 p2 234 p3 345 p12 678 即 是否可以使用第一个标记指定参数名称 例如 p 后跟一个数字 是动态的吗 我想避免这种情况
  • 如何确定母版页中正在显示哪个子页?

    我正在母版页上编写代码 我需要知道正在显示哪个子 内容 页面 我怎样才能以编程方式做到这一点 我用这个 string pageName this ContentPlaceHolder1 Page GetType FullName 它以 AS
  • WPF/数据集:如何通过 XAML 将相关表中的数据绑定到数据网格列中?

    我正在使用 WPF DataSet 连接到 SQL Server Express XAML 和 C Visual Studio 2013 Express 我从名为 BankNoteBook 的现有 SQL Server Express 数据

随机推荐

  • R:无法分配大于 x MB 的内存

    我在 R 中有一个 main 函数 它调用其他文件来运行我的程序 我通过bat文件 exe 调用主文件 当我逐行运行它时 它运行时不会出现内存错误 但是当我调用 bat 文件来运行它时 它会停止并给出以下错误 无法分配大于 51 MB 的内
  • 如何将 lex 文件中的 yytext 传递给 yacc?

    请我面临一个简单的问题 这就是问题 在我的 lex 文件中 我有类似的内容 char ptr String name BEGIN sName
  • Pandas Dataframe - 向下移动行并维护数据

    我的原始数据框 df column1 column2 0 1 a 1 2 b 2 3 c 3 4 d 4 5 e 5 6 f 我想将值向下移动 6 如下所示 column1 column2 0 1 2 3 4 5 6 1 a 7 2 b 8
  • 我可以更改 python 首先查找模块的顺序吗?

    假设我有一个脚本my tools py我作为模块导入 但my tools py保存两次 在C Python27 Lib并在运行执行导入的脚本的同一目录中 我可以改变python查找的顺序吗my tools py第一的 也就是说 首先检查它是
  • 如何将字符串与变量连接起来?

    所以我试图用字符串和传递的变量 这是一个数字 创建一个字符串 我怎么做 我有这样的事情 function AddBorder id document getElementById horseThumb id className hand p
  • Shiny DT:排序时冻结行名?

    我正在设计一个 Shiny 应用程序 根据各种指标对人们进行排名 使用数据排序功能 我希望用户能够单击任何列并按其排序 使用行名作为排名似乎很自然 问题是这些数字与表的其余部分一起排序 有什么方法可以冻结此列 以便在表的其余部分排序时排名数
  • 我无法在 main 方法中调用 repaint() 方法

    每次我尝试调用 repaint 方法时 它都会说静态方法不能引用非静态方法 顺便说一句 它与 PaintComponent 方法位于同一类中 我尝试首先从类中创建一个对象 然后使用对象名称引用它 但它也不起作用 请帮忙 public cla
  • 在 pandas 中使用 .loc 会减慢计算速度

    我有以下数据框 我想将底部 1 的值分配给新列 当我使用 loc 通知进行此计算时 使用 loc 分配大约需要 10 秒 而替代解决方案只需 2 秒 df temp pd DataFrame np random randn 10000000
  • 图像“包含”resizeMode 在本机反应中不起作用

    我正在真实的 Android 设备上使用 React Native 当创建一个非常简单的应用程序时 在主应用程序组件上仅使用以下渲染函数 render
  • 当“breaks”已经定义时,序列 x 轴标签(R,ggplot)

    我在数据上使用了scale 函数 以避免在进行混合模型时出现高相关性 现在我希望原始值出现在我的图中 所以我用以下方法反转了缩放比例x attr x scaled scale attr x scaled center 并将这些值放入我用来绘
  • 文本字段上的颤动光标位置

    我想在光标位置后附加文本 例如 当用户将光标移动到文本字段中间时 我想获取文本上的光标位置 然后在光标位置后添加文本 我尝试使用文本编辑控制器 但无法到达光标位置 如何检测文本字段上的光标位置 我用这个解决了我的问题 Get cursor
  • ggplot2中的上标和下标轴标签[重复]

    这个问题在这里已经有答案了 我需要 ggplot2 中的一个轴标签 其内容为 同化 mol CO2 m 2 s 1 其中 CO2 的 2 作为下标 2 和 1 作为上标 谢谢 你可以尝试 library ggplot2 qplot upta
  • C# Web API POST 参数 FromBody 始终为 null

    我已经在网络上搜索了几个小时 并尝试了 StackOverflow 上描述的许多不同的解决方案 我知道以前曾有人问过类似的问题 但没有一个答案或评论对我有用 问题 我有一个 NET Web API 它有一个带有一些参数的 Post 方法 其
  • Extjs - 带有子菜单的工具栏按钮菜单下拉列表。这是可能的?

    我已经完成了一个带有带有下拉菜单的按钮的工具栏 但我需要更多的子菜单级别 可以这样做吗 例子 工具栏按钮 gt 菜单 1 级 1 菜单 2 LV 1 menu 3 lv 1 gt 子菜单 1 lv 2 子菜单 2 lv 2 菜单 4 LV
  • 版本控制和测试驱动开发

    测试驱动开发的标准流程似乎是添加测试 查看它失败 编写生产代码 查看测试通过 重构 并将其全部检查到源代码管理中 是否有任何东西可以让您检查测试代码的修订版 x 和生产代码的修订版 x 1 并查看您在修订版 x 中编写的测试是否失败 我对任
  • 如何在 Visual Studio 2010 中的 AnkhSVN 中更改 SVN 身份验证详细信息?

    我想在 Visual Studio 2010 AnkhSVN 插件中更改 SVN 的用户名和密码 我怎样才能做到这一点 找到了 要清除缓存的用户名 密码 您可以访问 Tools gt Options gt Source Control gt
  • Bash 中声明、排版和局部变量之间的区别

    在 Bash 中输入变量时 有什么区别declare and typeset 当在函数内部使用时 有什么区别declare and typeset and local 我遇到的唯一区别是排版可以移植到 ksh 脚本 除此之外 还有什么理由可
  • 浮点图 - 外部选择条形图

    我正在使用浮点http code google com p flot http code google com p flot 并希望当用户将鼠标悬停在链接上时突出显示系列中的特定栏 有谁知道该怎么做 Cheers Tim 你正在寻找的是hi
  • 将视觉块发送到外部命令

    如何将视觉块发送到外部命令 我使用 Ctrl q 选择我的块 然后按 program name 但 Vim 发送整行而不是选定的文本块 我在 Windows 10 上使用 gVim Ex 命令是基于行的 而块视觉模式是一个 Vim 扩展 这
  • Kentico UserInfoProvider 在控制台应用程序中未按预期工作

    此代码在 Kentico 网站中运行良好 var users UserInfoProvider GetUsers for int x 0 x lt users Count x UserInfo currentUser users Eleme