小编Ale*_*lex的帖子

全文未索引 varbinary 列(使用 html)

我有一个包含 HTML 数据的表格,我想通过 html 过滤器使用全文索引进行搜索

所以我创建了一个索引:

CREATE FULLTEXT CATALOG myCatalog AS DEFAULT

CREATE FULLTEXT INDEX ON myTable (Body TYPE COLUMN Filetype)
                        KEY INDEX PK_myTable
Run Code Online (Sandbox Code Playgroud)

Body是一个varbinary(max)带有 HTML的列。该Filetype列是一个计算列返回.html

没有返回任何结果。

我确认.html安装了过滤器。如果我将列转换为“纯文本”索引(不是 html)并仅创建一个“纯文本”索引,则全文索引也已正确安装并且可以正常工作nvarchar

SQL 日志或 FTS 日志中没有错误。

关键字表是空的!

SELECT *
FROM sys.dm_fts_index_keywords
(DB_ID('myDatabase'), OBJECT_ID('myTable'))
Run Code Online (Sandbox Code Playgroud)

它返回的只是“END OF FILE”符号。

在此处输入图片说明

它说“文档计数 35”,这意味着文档已被处理,但未提取任何关键字。

附注。我有 SQL Server Express Edition 2012(具有包括全文在内的所有高级功能)。这可能是原因吗?但同样,“纯”全文搜索工作得很好!

聚苯乙烯。让我的同事在 SQL Express 2016 上对此进行测试 - 结果相同......在我们的生产服务器“企业”版上尝试过 - 相同。

更新

好吧,事实证明全文索引不支持 UNICODE!!在 varbinary 列中。当我将列转换为非 unicode(通过将其转换为 …

sql-server full-text-search

4
推荐指数
1
解决办法
484
查看次数

FormBorderStyle为NONE时的表单高度问题

我有一个无边框的形式(FormBorderStyle = None),高度为23像素(在设计器中设置)

当.NET在运行时绘制我的表单时 - 它将它绘制为38像素高(由于某种原因,它会添加标题栏的高度).

MessageBox.Show(this.Height.ToString()); //this shows 38!! why?
Run Code Online (Sandbox Code Playgroud)

要解决它,我必须设置"高度= 23;" 在Form_Load事件中.

private void MyForm_Load(object sender, EventArgs e)
{
    this.Height = 23; //workaround. wtf??
}
Run Code Online (Sandbox Code Playgroud)

您可以在Visual Studio 2010(Winforms App,target Framework - 2.0)中自行尝试.

跆拳道?

winforms

3
推荐指数
1
解决办法
1162
查看次数

ReSharper中的"使用调试器测试"?

"TestDriven.NET"有一个很棒的功能叫做"带调试器的测试".在ReSharper中有这样的东西吗?

谷歌搜索这个,但找不到任何东西.

testing resharper testdriven.net visual-studio

2
推荐指数
1
解决办法
176
查看次数

“外部”数组的 Vue3 反应性

在将现有应用程序从 Vue2 移植到 Vue3 时,我遇到了一个令人惊讶的问题。

如何让 Vue3 监视“外部”数组的变化?

这在 Vue2 中工作得很好,但在 Vue3 中停止工作:

<ul id="list">
    <li v-for="t in dataArray"> {{t}} </li>
</ul>

<script>
    var numbers = [1,2,3]; //this is my external array

    var app = Vue.createApp({
        data() { return { dataArray : numbers } } //bind Vue to my external array
    }).mount("#list");

    numbers.push(4); //UI not updating, but worked fine in Vue2

</script>
Run Code Online (Sandbox Code Playgroud)

我知道我可以调用app.dataArray.push,或者调用$forceUpdate等,但是有没有办法强制 Vue 简单地监视现有数组?

我想更广泛的问题是:如何将 Vue3 绑定到任意纯 JS 对象?该对象可能太复杂而无法重写,或者可能来自我无法控制的外部 API。这在 Vue2 或 Angular 中很简单(与任何普通对象的双向绑定,无论它是否是实例/组件的一部分)

PS …

vue.js vuejs3

2
推荐指数
1
解决办法
793
查看次数

“异步任务”与“返回 Task.Run”

我是 async/await c# 模型的新手,并试图了解这两个选项是否本质上是相同的:

public Task LongRunningMethod()
{
    return Task.Run(async () =>
    {
        await DoStuff();
    });
}

//then call it
await LongRunningMethod();
Run Code Online (Sandbox Code Playgroud)

和这个

public async Task LongRunningMethod()
{
    await DoStuff();
}

//then call it
await LongRunningMethod();
Run Code Online (Sandbox Code Playgroud)

我认为第一种方法会用完池中的一个额外线程......它还将一个任务包装到一个额外的任务中。还是我错了?

c# asynchronous async-await

0
推荐指数
1
解决办法
334
查看次数