小编lc.*_*lc.的帖子

为什么不在VS中切换到发行版,在web.config中将debug参数设置为false

在VS2008中(早期如果我没有误会)我有下拉列表,让我在调试和发布模式之间进行选择.一切安好.
当我将VS切换到Release时,我的web.config文件中的debug属性根本不会设置为false.
这是应该的方式吗?我一定会忘记在部署时将其设置为正确的值.我应该采取什么措施来确保它的运行方式应该如此?

.net c# asp.net-mvc visual-studio

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

如何在WinForm DataGridView事件处理程序中引用列名而不是e.ColumnIndex?

WinForm的一些事件处理程序DataGridView具有DataGridViewCellEventArgs参数和该参数ColumnIndex的属性.

ColumnIndex 是表示列的序数#的数字.

有没有办法从该参数而不是列索引引用列名?

所以不要这样做:

if (e.ColumnIndex == 1)
Run Code Online (Sandbox Code Playgroud)

我更喜欢这样的东西:

if (e.ColumnName == "CustomerName")
Run Code Online (Sandbox Code Playgroud)

因为如果列改变其位置,它将破坏代码.

datagridview winforms

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

Linq to SQL嵌套IN FROM查询

任何人都可以告诉我如何编写嵌套的SQL查询,如

SELECT*FROM X WHERE X.ID IN(从Y WHERE中选择Y.XID .....)

在LINQ?

linq-to-sql

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

.NET中的序列号(注册密钥)算法

有一些关于IP安全等的及时帖子,但我找不到专门针对算法的帖子.在我目前的一个项目中,我们决定采用离线注册密钥系统的路线.

我想我们最终的用户群大部分都是诚实的,所以我认为我们没有太多担心.另一方面,如果没有大量的汗水和眼泪,我宁愿不让休闲饼干获得访问权限.

那么,如何生成(和验证)密钥有哪些选择?硬件键控很可能是因为安装模型是从Intranet服务器上的samba共享运行的.此外,密钥应该多长时间?

其次,验证算法被反射出来的危险有多大,即使它被混淆了?改为在非托管代码中编写算法会更好吗?

.net security algorithm licensing software-distribution

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

如何释放字符串的未使用容量

我在程序中处理了很多字符串.这些字符串数据在读入我的程序后不会在整个生命周期内发生变化.

但由于C++字符串保留了容量,因此它们浪费了大量空间,而这些空间无法确定.我试图释放这些空间,但它没有用.

以下是我尝试过的简单代码:

string temp = "1234567890123456";
string str;

cout << str.capacity() << endl;   

str.reserve(16);    
cout << str.capacity() << endl;     
// capacity is 31 on my computer    

str += temp;    
cout << str.capacity() << endl;    

str.reserve(16);    
cout << str.capacity() << endl;     
// can't release. The capacity is still 31.
Run Code Online (Sandbox Code Playgroud)

(编译器是Visual C++)

我该怎么发布呢?

c++ string memory-management visual-c++

6
推荐指数
2
解决办法
2530
查看次数

为什么我们在HashTable中使用哈希代码而不是索引?

  • GetHashCode()函数如何生成整数哈希?这是一个不是唯一的随机值吗?

  • 在字符串中,它被覆盖以确保特定字符串只存在一个哈希码.怎么做?

  • 如何使用哈希码加速搜索哈希表中的特定键?

  • 使用哈希代码而不是直接在集合中使用索引(比如在数组中)有什么好处?

有人可以帮忙吗?

c# algorithm hash

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

MySQL非常慢的循环

我在MySQL中做了一个非常简单的过程(while循环):

BEGIN

    DECLARE start INT;
    DECLARE ending INT;

    SET start = 1;
    SET ending = 4000000;

    WHILE (start <= ending) DO
        SET start = start + 1;
    END WHILE;
END
Run Code Online (Sandbox Code Playgroud)

这在双核机器上需要大约26秒(每个核心100%),我不明白为什么.

你能给我一个答案吗?

mysql time loops while-loop long-integer

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

MySQL汇总拼图

我有以下MySQL查询:

select 
        members_categories.category_desc as 'membership_type',
    SUM( CASE payment_method WHEN 'Bank Transfer' THEN amount_paid ELSE 0 END ) AS 'Bank Transfer',
    SUM( CASE payment_method WHEN 'Cash' THEN amount_paid ELSE 0 END ) AS 'Cash', 
    SUM( CASE payment_method WHEN 'Cheque' THEN amount_paid ELSE 0 END ) AS 'Cheque', 
    SUM( CASE payment_method WHEN 'Credit Card' THEN amount_paid ELSE 0 END ) AS 'Credit Card', 
    SUM( CASE payment_method WHEN 'Direct Debit' THEN amount_paid ELSE 0 END ) AS 'Direct Debit', 
    SUM( CASE payment_method WHEN …
Run Code Online (Sandbox Code Playgroud)

mysql

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

首先使用EF代码在数据库级别停止空字符串

考虑实体框架代码优先的以下POCO实体:

public class Foo
{
    public int Id { get; set; }

    [Required, StringLength(100)]
    public string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

这将生成下表:

CREATE TABLE [dbo].[Foo] (
    [Id]        INT            IDENTITY (1, 1) NOT NULL,
    [Name]      NVARCHAR (100) NOT NULL,
    CONSTRAINT [PK_dbo.Foo] PRIMARY KEY CLUSTERED ([Id] ASC)
);
Run Code Online (Sandbox Code Playgroud)

现在,我理解EF的默认行为是将空字符串转换为null.因此,即使我明确地将它提供一个空字符串,我也会得到一个验证异常,这是完美的.以下代码将抛出DbEntityValidationException:

var f = new Foo { Name = "" };
context.Foos.Add(f);
context.SaveChanges();
Run Code Online (Sandbox Code Playgroud)

但是,问题是如果我有一个直接访问数据库的外部应用程序,我可以执行以下查询并成功:

insert into dbo.Foo(Name)
values ('')
Run Code Online (Sandbox Code Playgroud)

最好的解决方案可以说是不允许任何人直接连接数据库并强制他们通过业务层.但实际上,这可能并非总是可行.特别是如果我自己通过SSIS包导入外部数据.

我最了解说,应用程序应该被设置为拒绝尽可能多的坏数据在可能的最低程度.在这种情况下,这将意味着在数据库级别.因此,如果以旧式方式创建数据库,我会添加一个约束来检查(Name <> '')并阻止脏数据首先被插入. …

null entity-framework constraints ef-code-first

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

如何在ASP.NET中的ListView中的CheckedChanged事件中查找数据键?

我在项目模板中使用列表视图我正在使用标签和复选框.我希望每当用户点击复选框时,值应该在table.i中使用listview中的数据键更新.在datakey值的基础上应该在表中更新.查询是:

string updateQuery = "UPDATE [TABLE] SET [COLUMN] = " + Convert.ToInt32(chk.Checked) + " WHERE PK_ID =" + dataKey + " ";` 
Run Code Online (Sandbox Code Playgroud)

我也希望在显示结果时提供一些帮助,因为它在table.means中,如果特定pkid的表中列的值为1,则应检查该复选框.

这是代码片段:

<asp:ListView ID="lvFocusArea" runat="server" DataKeyNames="PK_ID" OnItemDataBound="lvFocusArea_ItemDataBound">
    <LayoutTemplate>
        <table border="0" cellpadding="1" width="400px">
            <tr style="background-color: #E5E5FE">
                <th align="left">
                    Focus Area
                </th>
                <th>
                    Is Current Focused
                </th>
            </tr>
            <tr id="itemPlaceholder" runat="server">
            </tr>
        </table>
    </LayoutTemplate>
    <ItemTemplate>
        <tr>
            <td width="80%">
                <asp:Label ID="lblFocusArea" runat="server" Text=""><%#Eval("FOCUS_AREA_NAME") %></asp:Label>
            </td>
            <td align="center" width="20%">
                <asp:CheckBox ID="chkFocusArea" runat="server" OnCheckedChanged="chkFocusArea_CheckedChanged" AutoPostBack="true" />
            </td>
        </tr>
    </ItemTemplate>
    <AlternatingItemTemplate>
        <tr style="background-color: #EFEFEF"> …
Run Code Online (Sandbox Code Playgroud)

c# asp.net checkbox listview

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