小编Zac*_*tes的帖子

数据库设计:捕获用户/朋友关系的最佳表结构?

我正在尝试设计一个数据模型,表示一个用户是另一个用户的朋友.这是我到目前为止所提出的,但它似乎很笨重,有更好的解决方案吗?

User
=====
Id
Name
etc...

UserFriend
===========
UserId
FriendId
IsMutual
IsBlocked
Run Code Online (Sandbox Code Playgroud)

database-design social-networking

34
推荐指数
4
解决办法
5万
查看次数

如何在SQL中选择类似的集合

我有以下表格:

Order
----
ID (pk)

OrderItem
----
OrderID (fk -> Order.ID)
ItemID (fk -> Item.ID)
Quantity

Item
----
ID (pk)
Run Code Online (Sandbox Code Playgroud)

如何编写一个可以选择Orders至少85%与特定类似的查询的查询Order

我考虑使用Jaccard Index统计来计算两者的相似性Orders.(通过取每组的交集OrderItems除以每组的并集OrderItems)

但是,如果没有为每个可能的两个组合存储计算的Jaccard Index,我就无法想到这样做的方法Orders. 还有另外一种方法吗?

另外,有没有办法将Quantity每个匹配的差异包括OrderItem在内?

附加信息:


总计Orders:~79k
总计OrderItems:约1.76m
Avg.OrderItemsOrder:21.5
总计Items:~13k

注意


85%的相似性数字只是对客户实际需求的最佳猜测,它可能在未来发生变化.适用于任何相似性的解决方案将是更可取的.

sql sql-server algorithm

21
推荐指数
1
解决办法
4078
查看次数

轻量级模糊搜索库

你能建议一些轻量级模糊文本搜索库吗?

我想要做的是允许用户使用拼写错误找到搜索字词的正确数据.

我可以使用像Lucene这样的全文搜索引擎,但我认为这是一种过度杀伤力.

编辑:
为了使问题更清楚,这里是该库的主要场景:
我有一个很大的字符串列表.我希望能够在此列表中搜索(类似于MSVS的intellisense)但是应该可以通过字符串过滤此列表,该字符串不存在于其中,但足够接近列表中的某个字符串.
例:

  • 红色
  • 绿色
  • 蓝色

当我在文本框中输入'Gren'或'Geen'时,我想在结果集中看到'Green'.

索引数据的主要语言是英语.

我认为Lucene对于这项任务非常重要.

更新:

我找到了一个符合我要求的产品.这是ShuffleText.
你知道其他选择吗?

fuzzy-search

14
推荐指数
1
解决办法
7501
查看次数

如何以编程方式从类型生成xml架构?

我正在尝试以编程方式从任何.net类型生成xs:schema.我知道我可以使用反射并通过迭代公共属性来生成它,但是有内置的方法吗?

例:

[Serializable]
public class Person
{
    [XmlElement(IsNullable = false)] public string FirstName { get; set; }
    [XmlElement(IsNullable = false)] public string LastName { get; set; }
    [XmlElement(IsNullable = true)] public string PhoneNo { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

期望的输出:

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="Person" type="Person" />
  <xs:complexType name="Person">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" form="unqualified" name="FirstName" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" form="unqualified" name="LastName" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" form="unqualified" name="PhoneNo" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
</xs:schema>
Run Code Online (Sandbox Code Playgroud)

.net c# xml

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

寻找WPF的对象图树视图控件

我正在尝试查找代码或预先打包的控件,它采用对象图并在TreeView中显示属性的公共属性和值(递归).即使是一个天真的实现也没关系,我只需要一些东西开始.

解决方案必须是WPF,而不是winforms或com等...

c# reflection treeview wpf-controls

11
推荐指数
2
解决办法
4596
查看次数

如何从Mercurial签出源代码

我需要从Mercurial下载源代码.

$ hg clone xmppframework.googlecode.com/hg xmppframework 
  warning: xmppframework.googlecode.com certificate with fingerprint b1:af:83:76:f3:81:b0:57:70:d8:07:42:c8:c1:b3:67:38:c8:7a:bc not verified (check hostfingerprints or web.cacerts config setting) 
  requesting all changes 
  adding changesets 
  adding manifests 
  adding file changes
Run Code Online (Sandbox Code Playgroud)

我在终端尝试使用此链接下载源代码.但命令失败.

任何人都可以帮我摆脱这个.

感谢所有人,Madan.

mercurial

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

使用MVC以可重用的方式将客户端逻辑与服务器端逻辑分开

在回答之前,这个问题很复杂:

  1. 我们正在使用asp.net/asp.net mvc/jQuery进行开发,但我对使用任何框架的任何平台上的解决方案持开放态度
  2. 我认为像排序/隐藏列/重新安排列/验证(它有意义)的逻辑应该在客户端
  3. 我认为搜索/更新db/running工作流的逻辑应该在服务器端(仅仅是出于安全/调试的原因)

我们要做的就是在我们的UI中创建一个MESS,通过编写一堆JavaScript来处理不同上下文中的相同功能.我知道我可以使用JavaScript文件+面向对象的JavaScript,我正在寻找使这一切变得更容易的模式.

提出的一个解决方案是在客户端和服务器端都有一个MVC模型,我们可以在客户端控制器中封装JavaScript功能,然后在站点的不同部分使用它们.但是,这意味着我们有2个MVC实现!

这有点矫枉过正吗?您将如何扩展此解决方案?还有哪些其他解决方案?

javascript model-view-controller asp.net-mvc

8
推荐指数
1
解决办法
2375
查看次数

登录C#:获取类/方法名称性能

我最近的任务是将日志语句添加到解决方案中的每个方法调用.这些日志条目需要包含类和方法名称.

我知道我可以使用MethodBase.GetCurrentMethod()StackFrame.GetMethod()方法.哪个更好?是否有更好(或更高性能)的方法来获取类和方法名称?

c# logging

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

真的很长的类/变量/属性/方法名称

我的一些朋友和同事进行了一些竞赛,以找到或写出可能的最长的类/变量/属性/方法名称.请记住,我们努力成为优秀的男孩和女孩,并保持命名可理解和简洁,同时仍然通过其名称解释事情的作用.

有时候它不会发生.你参加过这个吗?我只想看看那里有什么.(也许我的朋友和我并不像我们想象的那样疯狂)

注意:我不是在寻找糟糕的命名.那已经在这里了.我正在寻找有点长的命名.

naming naming-conventions variable-names class-names

6
推荐指数
4
解决办法
3518
查看次数

为什么'{'在静态方法中抛出NullReferenceException?

这个有点深奥.尝试在visual studio 2008中的winforms项目中打开表单(在winforms设计器中)时遇到了NullReferenceException.堆栈跟踪指向以下代码的第四行:

public static class Logger
{
    public static void LogMethodEnter()
    {
        var frame = new StackFrame(1);
        var method = frame.GetMethod();
        Trace.TraceInformation("{0}.{1}.{2}()", method.DeclaringType.Namespace, method.DeclaringType.Name, method.Name);
        Trace.Indent();
    }

    public static void LogMethodExit()
    {
        Trace.Unindent();
    }
}
Run Code Online (Sandbox Code Playgroud)

...意思是开口大括号的线条.我在其他项目中遇到了同样的问题(但不涉及winforms设计器),我认为这是一个与线程相关的问题,但我没有代码来复制它.

为什么会发生这种情况,为什么异常堆栈跟踪指向带有花括号的行?

澄清:空引用异常仅发生在winforms设计器中.运行应用程序时,它不会抛出该错误.

c# static nullreferenceexception visual-studio winforms

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