小编Gre*_*Gum的帖子

重新排序序列的最简单方法

考虑List中具有int属性Order的A类的4个实例(最多100个)。

a0.Order is 0
a1.Order is 1
a2.Order is 2
a3.Order is 3
Run Code Online (Sandbox Code Playgroud)

现在,需要更改Order属性,以便将a0插入a3之前(或在列表中的任何索引处-可以在开始,结束或中间)。

结果应该是这样的:

a0.Order is 2
a1.Order is 0
a2.Order is 1
a3.Order is 3
Run Code Online (Sandbox Code Playgroud)

请注意,这是一个列表,列表的实际物理顺序并不重要,仅更改属性即可。

项目的数量不只是在更改“订单”。

最简单的方法是什么?

c# linq

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

是否有开始使用'Is'的布尔属性名称的官方指导?(例如,'IsDeleted')

我喜欢用布尔属性命名约定Is______,如IsDeleted,IsDefault等,但我被这个挑战.那么有关于这个问题的任何"官方"指导吗?我找不到任何东西.

(是的,我知道这是细枝末节.)

.net c# boolean naming-conventions

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

为什么这使用表变量?

我有以下现有的SQL.我想重写这个不使用表变量.但我不太了解这一点,以便写一个替代品.只是插入表格对我来说似乎过于复杂.

Create PROCEDURE [dbo].[InsertOrderHeader](@OrderHeader [OrderHeaderTable] READONLY)
AS
BEGIN

declare @FullOrderHeaderTable TABLE ( OrderId int, UpdatedTime DateTime);
INSERT INTO [OrderHeader] 
OUTPUT Inserted.OrderId, Inserted.UpdatedTime INTO @FullOrderHeaderTable
SELECT 
    CustomerId,
    OrderLines,
    OrderStatus,
    NotificationType,
    NotifyEmail,
    NotifySMS,
    PromoCode,
    ReportTotal,
    DiscountAmount,
    OrderTotal,
    GetDate(),
    CreatedBy,
    GetDate(),
    UpdatedBy
FROM @OrderHeader
SELECT OrderId, UpdatedTime FROM @FullOrderHeaderTable;
END
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法来编写这个不使用表变量?

格雷格

sql-server-2008

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

有没有理由不使用自定义"评论"属性?

有没有理由不做以下事情?

<div comment="start display area">
     ...
</div>
Run Code Online (Sandbox Code Playgroud)

我想添加注释,这似乎是一种理想的方法.

我知道我也可以这样做:

<!--Start display area-->
<div">
     ...
</div>
Run Code Online (Sandbox Code Playgroud)

第一种语法对我来说似乎更清晰.我遇到的问题<!--是,有时候,我确实想要注释掉一个HTML区域以进行调试.当那里有注释字符串时,这不起作用.

我之前发现了很多关于它的讨论:https: //www.w3.org/XML/2000/04schema-hacking/comment-test.html

html

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

比较Javascript符号不起作用

我正在学习ES6的Symbol功能.

所以在节点中,我写下以下内容(实际上是在Typescript中).它编译得很好,但控制台记录"未找到"我做错了什么?在我看来,它应该工作.

这个例子来自这篇文章

"use strict"

var levels = {
    DEBUG: Symbol('debug'),
    INFO: Symbol('info'),
    WARN: Symbol('warn'),
};
function log(level: Symbol, message)
{
    switch(level)
    {
        case Symbol.for('debug'):
            console.log(`Debug Message: ${message}`);
            break;

        case Symbol.for('info'):
            console.log(`Info Message: ${message}`);
            break;

        case Symbol.for('warn'):
            console.log(`Warn Message: ${message}`);
            break;

        default:
            console.log("Not found");
    }
}


log(levels.DEBUG, 'debug message');
log(levels.INFO, 'info message');
Run Code Online (Sandbox Code Playgroud)

更新

正如在接受的答案中所指出的,这将起作用:

var levels = {
    DEBUG: Symbol.for('debug'),
    INFO: Symbol.for('info'),
    WARN: Symbol.for('warn')
};
function log(level: Symbol, message)
{
    switch(level)
    {
        case Symbol.for('debug'):
            console.log(`Debug Message: ${message}`);
            break; …
Run Code Online (Sandbox Code Playgroud)

javascript ecmascript-6

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

如何限制跨度文本

我有一个用html/js创建的树视图.显示文本的元素是范围.

我想限制跨度的宽度,因为有时文本很长.例如,我想只显示前20个字符.如果长于此值,则显示省略号.

所以我尝试设置最大宽度,但是这不符合跨度.

如果我将跨度更改为div,它可以工作,但它完全改变了树视图的布局.

有没有办法实现这个目标?(我在下面放了'LIMIT TEXT HERE'来显示限制范围.)

<ul class="tree-view-list">
        <li class="node-item">
            <i click.delegate="toggleItems(item)"
               if.bind="item.nodeAspect.isExpanded && item.children.length > 0"
               class="icon sf-icon-chevron-down p-r-half grow chevron"
               aria-hidden="true"></i>
            <i click.delegate="toggleItems(item)"
               class="icon sf-icon-chevron-right p-r-half grow chevron"
               if.bind="!item.nodeAspect.isExpanded && item.children.length > 0"
               aria-hidden="true"></i>



            <div if.bind="item.nodeAspect.isEditing">
                <form>
                    <input blur.trigger="saveEdit(item)" attach-focus="true" type="text" value.bind="item.name">
                    <button style="display: none" click.delegate="saveEdit(item)"></button>
                </form>
            </div>

            <span class="e-treeview">

                <span if.bind="!item.nodeAspect.isEditing"
                      mouseover.delegate="onMouseOver(item)"
                      mouseout.delegate="onMouseOut(item)"
                      class="node-wrapper ${item.nodeAspect.isSelected ? 'node-is-selected e-active' : ''} ${item.nodeAspect.isHovering ? 'e-node-hover' : ''}"
                      click.delegate="nodeSelected(item)"
                      dblclick.delegate="nodeDoubleClick(item)">
                    <span draggable="true"
                          class="node-text"
                          contextmenu.delegate="showContextMenu($event, item)"
                          dragstart.delegate="dragStart($event, item)"
                          dragover.delegate="dragOver($event, item)" …
Run Code Online (Sandbox Code Playgroud)

html css

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

为什么 Linq To Entities 创建未优化的查询

EF 创建的查询使用索引扫描,而不是索引查找。通过稍微修改查询以不使用参数,而是使用索引查找。索引扫描大约需要三秒,而查找是即时的。

生成的查询(使用索引扫描):

exec sp_executesql N'SELECT TOP (1) 
    [Extent1].[phone_id] AS [phone_id], 
    [Extent1].[phone] AS [phone], 
    [Extent1].[high_usage_flag] AS [high_usage_flag], 
    [Extent1].[cds_flag] AS [cds_flag], 
    [Extent1].[never_call_flag] AS [never_call_flag], 
    [Extent1].[pa_state_dnc_flag] AS [pa_state_dnc_flag], 
    [Extent1].[ma_state_dnc_flag] AS [ma_state_dnc_flag], 
    [Extent1].[national_dnc_flag] AS [national_dnc_flag], 
    [Extent1].[note] AS [note], 
    [Extent1].[pec_never_call_flag] AS [pec_never_call_flag], 
    [Extent1].[nicor_dnc_flag] AS [nicor_dnc_flag], 
    [Extent1].[css_vici_flag] AS [css_vici_flag], 
    [Extent1].[css_pec_flag] AS [css_pec_flag], 
    [Extent1].[css_vici_alt_flag] AS [css_vici_alt_flag], 
    [Extent1].[area_code] AS [area_code], 
    [Extent1].[phone_type_id] AS [phone_type_id], 
    [Extent1].[last_answer_date] AS [last_answer_date], 
    [Extent1].[csr_bad_flag] AS [csr_bad_flag], 
    [Extent1].[to_process_flag] AS [to_process_flag], 
    [Extent1].[deleted_date] AS [deleted_date], 
    [Extent1].[wireless_flag] AS [wireless_flag]
    FROM [dbo].[phone] AS [Extent1]
    WHERE [Extent1].[phone] = @p__linq__0',N'@p__linq__0 nvarchar(4000)',@p__linq__0=N'555555555' …
Run Code Online (Sandbox Code Playgroud)

sql-server entity-framework entity-framework-core

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

如何在mvc 5中将using语句添加到所有视图中

有许多为web.config中的所有视图添加using语句以用于先前版本的示例,但我没有找到一个用于MVC 5.

有人能举个例子吗?

asp.net-mvc-5

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

如何编写一个数组过滤器,它返回另一个数组中的所有数组项

assignedRoles = ['User','InCharge'];
items = ['Admin','Supervisor','User', 'InCharge'];
Run Code Online (Sandbox Code Playgroud)

我需要一个过滤器,它将返回assignRoles中的所有项目.

所以在上面的例子中,过滤器将返回'User'和'InCharge'

这是我尝试过的:

return items.filter(a=> a.any(assignedRoles);
Run Code Online (Sandbox Code Playgroud)

javascript

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

如何在 Sql Server Data Tools 中运行保存的脚本

我只是在学习SSDT。

我连接到一个数据库,编写一些 SQL,然后将它保存到一个文件中作为项目的一部分。一切正常。

但现在我想打开并运行脚本。

当我打开脚本时,顶部的工具栏不见了,我通常用来运行脚本。

我不明白如何恢复此工具栏,除非选择“新建查询”,这会打开带有工具栏的 SQL 窗口,然后将 SQL 复制并粘贴到新窗口中。

编辑器似乎会自动调出工具栏。

我正在使用 VS15 和最新的 SSDT。

sql-server-data-tools visual-studio-2015

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

如何取消链接样式

我在 div 中有一个链接:

  <div class="parentStyle">Click me:<a>foo</a></div>
Run Code Online (Sandbox Code Playgroud)

如何使链接没有任何自己的样式,以便它具有父 div 的外观?

问题是父 div 有一个带有白色字母的蓝色背景。因为它是一个链接,所以它的样式就像一个带有蓝色字母的链接,所以我最终以蓝色为蓝色。

使用 Javascript 添加父样式。所以父母有时用白色字母设计,有时不是。

我需要链接以保持与父级相同的外观。

这是选中时的样子:

<div class="k-top k-top"><span class="k-in k-state-selected">
        <a class="au-target" au-target-id="222" href="#/entity-router/entityDetails/2">
            Item 1</a>
    </span></div>
Run Code Online (Sandbox Code Playgroud)

这是未选中时的外观:

<div class="k-bot"><span class="k-in">
        <a class="au-target" au-target-id="234" href="#/entity-router/entityDetails/8">Item 2</a>
    </span></div>
Run Code Online (Sandbox Code Playgroud)

html css

0
推荐指数
2
解决办法
4189
查看次数

如何将插入的记录的ID返回给C#

我有这个存储过程:

Insert into dbo.file_row (file_sub_type) values (@file_sub_type)
DECLARE @result int;
SET @result = SCOPE_IDENTITY()
RETURN @result;
Run Code Online (Sandbox Code Playgroud)

这样可以在SSMS中返回id.但是,当我从C#调用它时,它返回-1.

var connection = GetSqlConnection();
connection.Open();

SqlCommand command = new SqlCommand();
command.Connection = connection;
command.CommandType = CommandType.StoredProcedure;
command.CommandText = "InsertInto_file_row";
command.Parameters.Add(new SqlParameter("@file_sub_type", fileType));

int result = command.ExecuteNonQuery();
connection.Close();
return result;
Run Code Online (Sandbox Code Playgroud)

我不明白我做错了什么.我只需要插入记录的Id.

格雷格

c# sql-server

-1
推荐指数
1
解决办法
110
查看次数