问题列表 - 第35296页

Microsoft Unity中转发的类型

如何在Unity Framework中将单个组件用于多个服务?

在Windsor中,它按以下方式配置:

var container = new WindsorContainer();
container.Register(Component.For<Service1, Service2>()
                            .ImplementedBy<Component>());

var service1 = container.Resolve<Service1>();
var service2 = container.Resolve<Service2>();
Run Code Online (Sandbox Code Playgroud)

转发类型的想法是,如果组件是单例service1并且service2 是相同的实例.

.net castle-windsor unity-container

5
推荐指数
1
解决办法
331
查看次数

仅根据文件在lucene中出现更多术语来计算得分

我开始研究基于lucene.net引擎的简历检索(文档)组件.它工作得很好,它可以获取文档并根据文档对其进行评分

VSM背后的想法是,相对于该术语在集合中的所有文档中出现的次数,查询术语在文档中出现的次数越多,该文档与查询的相关性就越高.

Lucene的实用评分功能源于以下内容.

score(q,d)=coord(q,d)·queryNorm(q)· ?( tf(t in d) ·idf(t)2 · t.getBoost() · norm(t,d) ) 
                                  t in q
Run Code Online (Sandbox Code Playgroud)

在这

  • tf(t in d)与术语的频率相关,定义为术语t出现在当前得分文档中的次数d.具有更多特定术语的文档会获得更高的分数
  • idf(t)代表逆文档频率.该值与docFreq的倒数(术语t出现的文档数)相关.这意味着更罕见的术语对总分的贡献更高.

在大多数情况下,这确实非常棒,但由于现场规范计算,结果并不准确

fieldnorm aka"field length norm"值表示该doc中该字段的长度(因此较短的字段会自动提升).

由于这个原因,我们没有得到准确的结果.举个例子,我得到10000个文件,其中3000个文件有java和oracle关键字.并且每个文档看起来都没有变化.

  • 假设doc A在1000个单词中得到10个java 20 oracle,而doc B在50个单词中得到2个java 2 oracle
  • 如果我正在搜索"java和oracle"查询,则由于长度规范化,lucene返回高分的文档B.

由于业务的性质我们需要检索文件得到更多的搜索关键字出现应该先来,我们并不真正关心文件的长度.

因此,一个带有大量关键字的简历的Guy在结果中被移到了下面,并且出现了一些小的简历.

为了避免这种情况,我需要禁用长度标准化.有人可以帮我弄这个吗??

我附上了Luke结果图片供您参考.

在此图像中,使用java 50次和oracle 6次的文档向下移动到第11位.

替代文字

但是这个带有java 24次和oracle 5次的文档因为fieldnorm而成为最佳射手.

替代文字

希望我清楚地传达信息......如果不是,请问我,我会提供更多信息

c# java lucene search lucene.net

5
推荐指数
1
解决办法
1397
查看次数

为Django模型生成非顺序ID/PK

我正在开始研究新的webapp.部分内容将为用户提供可以在一对多关系中自定义的页面.这些页面自然需要具有唯一的URL.

Django留给自己的设备,通常AUTOINCREMENT会为模型分配标准ID.虽然这很有效,但它看起来并不好看,它也使得页面非常容易预测(在这种情况下,这是不可取的).

而不是1,2,3,4我想要设置长度,随机生成的字母数字字符串(例如h2esj4).可能的36个字符中的6个点应该给我超过20亿个组合,在这个阶段应该绰绰有余.当然,如果我可以在以后扩展它,那也会很好.

但有两个问题:

  1. 随机字符串偶尔会拼出坏词或其他令人反感的短语.有没有一个体面的方式回避这个?公平地说,我可能会接受一个数字字符串,但它确实会对冲突的可能性产生重大影响.

  2. 如何让Django(或数据库)在插入时进行繁重的工作?我宁愿不插入然后解决密钥(因为这不是一个关键).我假设有并发问题也要注意,但如果同时生成两个新页面而第二个(克服所有可能性)神奇地获得与第一个提交之前的第一个相同的密钥.

我不认为这与URL缩短器生成ID的方式有一百万英里的差异.如果有一个体面的Django实现,我可以捎带它.

django url primary-key django-models

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

检索脱机的SQL Server数据库的文件列表

我在SQL服务器上有一些脱机数据库.我想知道光盘上的哪些文件与这些数据库有关.是否可以检索脱机数据库的文件列表而无需先将它们联机?

t-sql sql-server

18
推荐指数
2
解决办法
3万
查看次数

在Visual Studio中了解变量的地址

我开始学习使用Visual Studio 2008调试C程序.在调试模式下运行时,如何知道初始化变量的地址?我选择观看它,但只能知道价值.谢谢

c visual-studio

9
推荐指数
1
解决办法
4734
查看次数

NSString的方法doubleValue给出了意想不到的结果

我需要将NSString转换为double.如果此字符串本质上是整数,则结果为OK.如果string是十进制,也可能是组分隔符,则结果为false.任何分隔符之王(无论是"."还是",")字符串中的第一个字母总是用作小数分隔符.

我曾尝试用NSScanner做一些事情,但我根本不明白如何解决这个问题.

想法如下:无论我输入textfield整数,还是带或不带组分隔符的十进制数,我想得到正确的十进制数.

我很乐意得到任何帮助.

提前致谢!

iphone objective-c nsstring

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

jQuery UI单选按钮 - 如何正确切换检查状态

我有一组单选按钮,都是用jQuery UI设计的.button().

我想改变他们的检查状态.但是,当我以编程方式对容器的更改事件执行以下操作时:

$("#myradio [value=1]").attr("checked", false);
$("#myradio [value=2]").attr("checked", true);
Run Code Online (Sandbox Code Playgroud)

值正确更改,但UI样式仍然显示未选中的单选按钮和选中的样式,并且选中的样式仍然未选中.

我查看了button()关于单选按钮方法的jQuery UI文档,但没有关于如何更改状态和更新UI样式的信息.

问题的核心是调用$("selector").button("disable");代码不会更改按钮的活动状态 - 正确检查基础单选按钮,但UI活动状态不会更改.所以,我得到一个看起来像仍然被检查的灰色按钮,并且未选中真正选择的按钮.

$("selector").button("enable").button("refresh");
Run Code Online (Sandbox Code Playgroud)

jquery jquery-ui radio-button

47
推荐指数
2
解决办法
7万
查看次数

什么更快:插入优先级队列,还是追溯排序?

什么更快:插入优先级队列,还是追溯排序?

我正在生成一些我需要在最后排序的项目.我想知道,在复杂性方面更快的是:将它们直接插入priority_queue或类似的数据结构中,还是在结尾处使用排序算法?

c++ sorting complexity-theory priority-queue

23
推荐指数
4
解决办法
2万
查看次数

在堆栈上创建一个对象,然后通过引用传递给C++中的另一个方法

我来自C#背景到C++.假设我有一个方法在堆栈的方法中创建一个对象,然后我将它传递给另一个类方法,该方法将它添加到一个memeber向量.

void DoStuff()
{
    SimpleObj so = SimpleObj("Data", 4);
    memobj.Add(so); 
}

//In memobj
void Add(SimpleObj& so)
{
   memVec.push_back(so); //boost::ptr_vector object
}
Run Code Online (Sandbox Code Playgroud)

这是我的问题:

  1. 一旦DoStuff方法结束,那么会超出范围并从堆栈中弹出?
  2. memVec有一个指向这样的指针,但它弹出了这里发生的事情?
  3. 什么是将堆栈对象传递给将它们存储为指针的方法的正确方法?

我意识到这些对C++程序员来说可能是显而易见的.

标记

c++ gcc boost memory-management

6
推荐指数
1
解决办法
1100
查看次数

在CSS中,在元素之后强制换行而不是将其作为块元素的更好方法是什么?

我有一个H3标题,我想要设置为具有特定的背景颜色,但没有元素的背景占用父元素的整个宽度.看到H3默认是一个块元素,我的样式需要将元素更改为内联块元素,或者只是内联元素,如下所示:

h3 {
    background-color: #333;
    color: white;
    display: inline-block;
}
Run Code Online (Sandbox Code Playgroud)

这样可以正常工作,但前提是它后面紧跟一个块元素.我不想改变标记只是为了迎合这种风格,所以我想知道是否有办法让任何相邻的元素,无论它如何显示,从下一行开始?

假设我可以使用CSS3.

css css3

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