using System;
using Microsoft.Xrm.Sdk;
using Microsoft.Crm.Sdk.Messages;
using Microsoft.Xrm.Sdk.Query; /// <summary>
/// 知识库文章
/// </summary>
public class KbArticleHelper
{
public static readonly string entityName = "kbarticle";
public Guid kbArticleId = Guid.Empty;
public IOrganizationService service; /// <summary>
/// 创建知识库文章
/// </summary>
public void Create()
{
Entity en = new Entity() { LogicalName = entityName };
en["title"] = "知识库文章测试";
kbArticleId = service.Create(en);
} /// <summary>
/// 检索指定的产品的前十篇知识库文章
/// </summary>
/// <param name="productId">产品id</param>
public void RetrieveByTopIncidentProductKbArticle(Guid productId)
{
RetrieveByTopIncidentProductKbArticleRequest request = new RetrieveByTopIncidentProductKbArticleRequest();
request.ProductId = productId;
RetrieveByTopIncidentProductKbArticleResponse response =
(RetrieveByTopIncidentProductKbArticleResponse)service.Execute(request);
EntityCollection entityCollection = response.EntityCollection;
} /// <summary>
/// 检索指定的主题的前十篇知识库文章
/// </summary>
/// <param name="subjectId">主题id</param>
public void RetrieveByTopIncidentSubjectKbArticle(Guid subjectId)
{
RetrieveByTopIncidentSubjectKbArticleRequest request = new RetrieveByTopIncidentSubjectKbArticleRequest();
request.SubjectId = subjectId;
RetrieveByTopIncidentSubjectKbArticleResponse response =
(RetrieveByTopIncidentSubjectKbArticleResponse)service.Execute(request);
EntityCollection entityCollection = response.EntityCollection;
} /// <summary>
/// 查找正文中包含指定文本的所有文档索引
/// </summary>
/// <param name="query">查询条件</param>
/// <param name="text">指定文本</param>
/// <param name="subjectId">主题id</param>
public void SearchByBodyKbArticle(QueryBase query, string text, Guid subjectId)
{
SearchByBodyKbArticleRequest request = new SearchByBodyKbArticleRequest();
request.QueryExpression = query;
request.UseInflection = true;
request.SearchText = text;
request.SubjectId = subjectId;
SearchByBodyKbArticleResponse response = (SearchByBodyKbArticleResponse)service.Execute(request);
EntityCollection entityCollection = response.EntityCollection;
} /// <summary>
/// 查找包含指定关键字的所有文档索引
/// </summary>
/// <param name="query">查询条件</param>
/// <param name="text">指定文本</param>
/// <param name="subjectId">主题id</param>
public void SearchByKeywordsKbArticle(QueryBase query, string text, Guid subjectId)
{
SearchByKeywordsKbArticleRequest request = new SearchByKeywordsKbArticleRequest();
request.QueryExpression = query;
request.UseInflection = true;
request.SearchText = text;
request.SubjectId = subjectId;
SearchByKeywordsKbArticleResponse response = (SearchByKeywordsKbArticleResponse)service.Execute(request);
EntityCollection entityCollection = response.EntityCollection;
} /// <summary>
/// 查找标题中包含指定文本的所有文档索引
/// </summary>
/// <param name="query">查询条件</param>
/// <param name="text">指定文本</param>
/// <param name="subjectId">主题id</param>
public void SearchByTitleKbArticle(QueryBase query, string text, Guid subjectId)
{
SearchByTitleKbArticleRequest request = new SearchByTitleKbArticleRequest();
request.QueryExpression = query;
request.UseInflection = true;
request.SearchText = text;
request.SubjectId = subjectId;
SearchByTitleKbArticleResponse response = (SearchByTitleKbArticleResponse)service.Execute(request);
EntityCollection entityCollection = response.EntityCollection;
} /// <summary> ///
/// 删除知识库文章 ///
/// </summary>
public void Delete() { service.Delete(entityName, kbArticleId); }
}

Kb Article Helper的更多相关文章

  1. Dynamics CRM 2011-RootComponent Type

    笔者因为时不时要导出solution,对solution xml进行处理,所以把xml中的rootcomponent type列一下  Type Description 1 Entity 2 Attr ...

  2. 删除流氓软件McAfee

    如何解决卸载McAfee时出现"处于托管模式时无法删除"问题 问题现象: 这几天在为客户终端换装杀毒软件时出现这么一个问题:在控制面板的添加或删除程序里面将"McAfee ...

  3. 非常全面的SQL Server巡检脚本来自sqlskills团队的Glenn Berry 大牛

    非常全面的SQL Server巡检脚本来自sqlskills团队的Glenn Berry 大牛 Glenn Berry 大牛会对这个脚本持续更新 -- SQL Server 2012 Diagnost ...

  4. 企业IT管理员IE11升级指南【4】—— IE企业模式介绍

    企业IT管理员IE11升级指南 系列: [1]—— Internet Explorer 11增强保护模式 (EPM) 介绍 [2]—— Internet Explorer 11 对Adobe Flas ...

  5. Visual Studio 2013 Update 3 RTM 正式发布

    VS2013.3 RTM已发布! 完整安装包:http://download.microsoft.com/download/6/F/0/6F0777D3-3541-465F-8639-A8F9D36B ...

  6. Ignite安装配置——上篇

    Ignite介绍 Ignite 是SolarWinds公司开发的一款数据库性能监控.性能分析并提供优化解决方案的性能检测分析工具,Ignite配置简单.方便:它会收集实时会话数据.服务器资源使用情况, ...

  7. Ignite 配置更新Oracle JDBC Drive

           如果使用Oracle 12C 作为Ignite 的Repository的话,在Repository Createion Wizard的配置过程中,会出现ORA-28040:No matc ...

  8. SQL Server 2008 R2 升级到 Service Pack 3后Report Builder启动不了

    一同事将测试服务器从SQL Server 2008 R2 SP2升级到了SQL Server 2008 R2 SP3后发现Report Service的报表编辑时启动不了Report Builder, ...

  9. ASP.NET corrupt assembly “Could not load file or assembly App_Web_*

    以下是从overFlow 复制过来的问题 I've read through many of the other questions posted on the same issue, but I s ...

随机推荐

  1. VISO画UML用例图添加Include关系的方法

    VISO画UML用例图添加Include关系的方法 今天用Microsoft Visio 2007画用例图时,发现visio UML用例里面找不到include关系,查到一个可行的解决办法:  1)创 ...

  2. js中问号

    是三目运算,如:(a==b)?a:b 也就是说,先判断a是否等于b,如果是(true),那么返回a,如果否(false),则返回b greeting=(visitor=="PRES" ...

  3. 五、python小功能记录——打包程序

    使用pyinstaller打包Python程序 安装工具 :pip3 install pyinstaller 在Python程序文件夹上(不点进去)按住shift并且右键,在弹出的选项中点击" ...

  4. MySQL 数据库--内置功能

    一 视图 视图:是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,可以将该结果集当做表来使用. 优点:们可以把查询过程中的临 ...

  5. ETCD TLS 配置的坑

    一.环境准备 环境总共 3 台虚拟机,系统为centos7,1个 master,2 个 etcd 节点,master 同时也作为 node 负载 pod,在分发证书等阶段将在另外一台主机上执行,该主机 ...

  6. August 01st 2017 Week 31st Tuesday

    A contented mind is the greatest blessing a man can enjoy in this world. 知足是人生在世最大的幸事. Being content ...

  7. [EffectiveC++]item3:尽可能使用const

    将某些东西声明为const可以帮助编译器检测出错误用法,const 编译器强制实施bitwise constness,但是你code的时候应该使用“概念上的常量性” 当const和non-const成 ...

  8. [COGS 2065]学数数

    2065. 学数数 ★★★☆   输入文件:jxthree.in   输出文件:jxthree.out   简单对比时间限制:1 s   内存限制:256 MB [题目描述] 从前有一只咩,还有一只叽 ...

  9. Google的Python代码格式化工具YAPF详解

    平时习惯了杂乱无章地编写代码,而最后的代码勘定,却依赖于PyCharm自带的格式化工具,以及其自带的提示功能来规范代码.而pycharm里的格式化工具,不支持对多文件进行代码批量格式化,曾经尝试些解决 ...

  10. python的sys和os模块

    一.sys sys.argv:实现从程序外部向程序传递参数.  其中sys.argv[0]为脚本的名称,所以要判断是否有参数传入可以:if len(sys.argv) > 1.  sys.exi ...