小编Roy*_*mir的帖子

Font-Family属性中有多种字体?

在命令中

<span style="font-family: arial,helvetica,sans-serif">
   <font size="1">
       [Country]
   </font>
</span>
Run Code Online (Sandbox Code Playgroud)

为什么font-family属性中有多种字体?

这是否意味着如果没有安装arial字体,那么它会转到helvetica?

html

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

实体框架包含命令 - 左连接还是内连接?

当我调查IncludeJoin我之间的区别时,我发现:

如果数据库包含外键 - 它没有导航道具,所以最好使用它Join

如果它确实有导航道具 - 那么使用Include.(它还可以节省数据库命中率.)

这里的一个答案引起了我的注意:

Include实现为连接.根据所包含链接的可为空性,它是内部左侧连接.

题 :

无效如何影响左/内连接?

在Sql server中我可以有一个Cities表和一个Persons表,一个人可以拥有一个NULL CityID.

为什么实体框架为我决定它是什么类型的连接?

编辑:可视化:

在此输入图像描述

在此输入图像描述

现在让我们将CityId更改为null:

在此输入图像描述

这是改变:

在此输入图像描述

c# linq entity-framework .net-4.0 linqpad

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

协议缓冲区 - 唯一编号标记 - 澄清?

我正在使用协议缓冲区,一切正常.除了我不明白的事实 - 为什么我需要proto文件中的编号标签:

message SearchRequest {
  required string query = 1;
  optional int32 page_number = 2;
  optional int32 result_per_page = 3;
}
Run Code Online (Sandbox Code Playgroud)

当然,我已经阅读了文档:

如您所见,消息定义中的每个字段都有一个唯一的编号标记.这些标记用于以消息二进制格式标识字段,并且在使用消息类型后不应更改.

我不明白如果我改变它会有什么不同.(我将创建一个新的原型并编译它 - 所以它为什么关心?)

另一篇文章指出:

原型定义中的编号字段消除了对版本检查的需要,这是对协议缓冲区的设计和实现的明确说明的动机之一.正如开发人员文档所述,协议的设计部分是为了避免像这样检查协议版本的"丑陋代码":

if (version == 3) {
  ...
} else if (version > 4) {
  if (version == 5) {
    ...
  }
  ...
}
Run Code Online (Sandbox Code Playgroud)

它只是我还是完全不清楚?

让我以不同的方式问它:

如果我有一个类似上述文件的proto文件,然后我将其更改为:

message SearchRequest {
  required string query = 3; //reversed order
  optional int32 page_number = 2;
  optional int32 result_per_page = 1;
} …
Run Code Online (Sandbox Code Playgroud)

protocol-buffers

26
推荐指数
2
解决办法
6860
查看次数

在jQuery中克隆风格?

我有一个<span>被调用的spn1,它有一些来自内联+ CSS文件的样式.

我有另一个<span>spn2.

我如何可以克隆spn1完整的风格融入spn2

我希望spn2看起来完全(风格)spn1.

jquery

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

用重音字符反转一个字符串?

所以我看到了Jon的双向飞碟视频,并且有一个代码示例:

应该有一个问题é - 在倒车之后但是我猜它在.net2(恕我直言)上失败了,无论如何它确实对我有效并且我确实看到了正确的反转字符串.

char[] a="Les Misérables".ToCharArray();
Array.Reverse(a);
string n= new string(a);
Console.WriteLine (n); //selbarésiM seL
Run Code Online (Sandbox Code Playgroud)

但我进一步说:

在希伯来语中有"Alef"字符: ?

我可以添加标点符号:( ??我相信它包含2个字符 - 但显示为一个.)

但现在看看会发生什么:

char[] a="Les Mis??rables".ToCharArray();
Array.Reverse(a);
string n= new string(a);
Console.WriteLine (n); //selbar??siM seL
Run Code Online (Sandbox Code Playgroud)

分裂......

我能理解为什么会这样:

Console.WriteLine ("??".Length); //2
Run Code Online (Sandbox Code Playgroud)

所以我想知道在C#中是否存在针对此类问题的解决方法(或者我应该构建自己的机制......)

.net c# unicode .net-4.0

25
推荐指数
2
解决办法
3219
查看次数

jQuery的ajax crossDomain属性的用法?

根据jQuery:

crossDomain (default: false for same-domain requests, true for cross-domain requests)类型:Boolean如果要在同一域上强制执行crossDomain请求(例如JSONP),请将crossDomain的值设置为true.例如,这允许服务器端重定向到另一个域.(版本增加:1.5)

我不明白以上.

如果代码是

$(document).ready(function ()
{
    $.ajax(
    {
        url: 'http://es3.com/Handlers/MyHandler.ashx',
        cache: false,
        dataType: "jsonp",
        ...
        ...
    });
});

function aaa(json)
{
    alert(json.result);
}
Run Code Online (Sandbox Code Playgroud)

并且即时通讯指定datatype:jsonp,然后响应将是application/javascript mime typed,因为它是一个将在我的浏览器中运行的脚本.

当我在同一个域下运行此代码时,我没有看到为什么它不会像那样行为的任何原因.(因此 - 我没有看到这个属性的用法).

我做了一个样本

我有2个(主机调整)域名.es2.comes3.com.

(注意,代码中的url始终是es3.com)

测试#1:

es3.com以下位置运行代码:(左窗格)从以下位置
运行代码es2.com:(右窗格)
crossDomain:false(缺少时默认).

看看差异:(http://i.stack.imgur.com/RKyZp.jpg)

在此输入图像描述

测试#2:

运行以下代码es3.com:(左窗格)
运行以下代码es2.com:(右窗格)
crossDomain:true <---通知

(http://i.stack.imgur.com/xEcyd.jpg) 在此输入图像描述

我没有看到任何区别. …

javascript ajax jquery

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

我什么时候应该使用`publishReplay` vs`hareReplay`?

我已经知道了

  • publish 共享一个订阅并返回一个ConnectableObservable(所以我们必须Connect())

  • Share()publish().refcount()

Replay后缀是很明显的,它返回它的最后一次发射/秒.

我们来看一个带有当前和未来订阅的Angular http请求:

<p>{{ (person | async)?.id   }}</p> //present markup

<p *ngIf=”show”>{{ (person | async)?.userId }}</p> //future markup
Run Code Online (Sandbox Code Playgroud)

如果我不想要多个http请求,我可以使用:

publishReplay().Connect()

但我也可以使用:shareReplay(),但我确信这里有一个比另一个更正确.

题 :

我何时应该使用 publishReplayvs shareReplay ?Http目前和未来的要求会有什么不同?

NB为什么没有关于的文档shareReplay

javascript rxjs angular

25
推荐指数
3
解决办法
6877
查看次数

为什么我需要mex端点和httpGetEnable?

我想知道为什么我需要声明这个:

 <serviceMetadata httpGetEnabled="true" />
Run Code Online (Sandbox Code Playgroud)

还有这个

<endpoint contract="IMetadataExchange" binding="mexHttpBinding" address="mex" />
Run Code Online (Sandbox Code Playgroud)

如果我只使用第一个 - 通过浏览器工作. 那为什么我需要第二个呢?

你能否举例说明我必须使用后者的情况?

wcf

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

结构上的as运算符?

我不明白.该As操作:

as运算符用于在兼容引用或可空类型之间执行某些类型的转换.

那为什么以下工作呢?

struct Baby : ILive
{
    public int Foo { get; set; }

    public int Ggg() 
    {
        return Foo;
    }
}

interface ILive
{
    int Ggg();
}

void Main()
{
    ILive i = new Baby(){Foo = 1} as ILive;    // ??????
    Console.Write(i.Ggg());                    // Output: 1
}
Run Code Online (Sandbox Code Playgroud)
  • Baby是一个结构,创建它将把价值放入stack.这里没有参考.

  • 这里肯定没有可空类型.

关于我为什么错的任何解释?

.net c# casting as-operator

24
推荐指数
2
解决办法
611
查看次数

绑定与咖喱的Javascript用法?

我想了解curryvs 之间的区别bind.

执行bind是:

/*1*/   Function.prototype.bind = function ()
/*2*/   {
/*3*/        var fn = this,
/*4*/           args = Array.prototype.slice.call(arguments);
/*5*/       var object = args.shift();
/*6*/       return function ()
/*7*/       {
/*8*/           return fn.apply(object, 
/*9*/                           args.concat(Array.prototype.slice.call(arguments)))
/*10*/       };
/*11*/   }
Run Code Online (Sandbox Code Playgroud)

执行curry是:

/*1*/   Function.prototype.curry = function ()
/*2*/   {
/*3*/       var fn = this,
/*4*/           args = Array.prototype.slice.call(arguments);
/*5*/       return function ()
/*6*/       {
/*7*/           return fn.apply(this, 
/*8*/                           args.concat(Array.prototype.slice.call(arguments)));
/*9*/       };
/*10*/   };
Run Code Online (Sandbox Code Playgroud)

我已经知道这 …

javascript currying

24
推荐指数
2
解决办法
5996
查看次数