小编Bre*_*uck的帖子

我为什么要在C#中使用int而不是字节或short

我找到了一些关于这个问题的线索.大多数人似乎倾向于在他们的c#代码中使用int,即使一个字节或一个smallint处理数据,除非它是一个移动应用程序.我不明白为什么.将C#数据类型定义为数据存储解决方案中的相同数据类型是否更有意义?

我的前提:如果我使用的是类型化的数据集,Linq2SQL类,POCO,无论如何我都会遇到编译器数据类型转换问题,如果我不保持我的数据类型在我的层之间保持同步.我真的不喜欢一直在做System.Convert,因为在c#代码中使用int更容易.我总是使用任何最小的数据类型来处理数据库和代码中的数据,以保持我的数据库接口干净.所以我敢打赌,75%的C#代码使用byte或short而不是int,因为这就是数据库中的内容.

可能性:这是否意味着大多数只为代码中的所有东西使用int的人也使用int数据类型作为他们的sql存储数据类型,并且可能不太关心他们的数据库的整体大小,或者他们是否在适当的情况下在代码中执行system.convert?

为什么我关心:我一直在努力工作,我只想熟悉最佳实践和标准编码惯例.

c# sql-server asp.net types

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

如何获取具有未知名称的DbEntityEntry EntityKey对象

我不应该使用DbEntityEntry的复杂属性方法或属性方法来获取EntityKey对象.我找不到MSDN的任何示例,但我认为这在Entity Framework 5中是可能的.我不知道实体密钥或实体的名称,因为我使用的是通用存储库接口.

c# entity-framework-5

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

是否有任何替代脚手架框架的Asp.Net动态数据?

我一直在玩动态数据,但我发现过滤和导航方面基本上没用,但最简单的场景,即使在预览4中.我特别希望能够在编辑数据时处理分层自引用表.

有没有人知道一个开源项目/或廉价的替代框架,以获得类似的开箱即用功能?

更新:动态数据允许您通过设置global.aspx以使用该上下文轻松地轻松连接L2S或EF类.如果使用L2S,您可以获得基本的动态导航和过滤功能,以及您在DBML中链接的任何表格.我想将它用作后端管理工具.

c# asp.net dynamic-data

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

如何使用Jquery查找并选择Value的Multi Select选项?

我似乎无法弄清楚如何通过值正确选择多选选项,并保留单独选择的其他选项.

更新确实有效,谢谢!我有多选隐藏,我认为firebug会将选项更新为"已选择",但事实并非如此.当我将attr设置为选中后"显示"多选框时,它被选中.所以这也是我问题的一部分,萤火虫在幕后向我展示了什么.

jquery multi-select option

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

jquery - 根据当前行位置的类名转到下一个表行?

我可以使用此代码获取当前行."this"是行中表格单元格中的链接.

$currentTR = $(this).parents('tr');
Run Code Online (Sandbox Code Playgroud)

接下来的两行可以做同样的事情,在当前行之后得到tr.

$nextTR = $(this).parents('tr').next();  
$nextTR = $(this).parents('tr').next('tr');
Run Code Online (Sandbox Code Playgroud)

如果我输出,$nextTR.html()我会看到我的期望

我不知道除了类名之外我需要去多少行才能到达正确的行,这样做对我来说不起作用.

$nextTR = $(this).parents('tr').next('.concept');  
$nextTR = $(this).parents('tr').next('tr .concept');
Run Code Online (Sandbox Code Playgroud)

我得到的只是空的

docs.Jquery 链接文本上的示例使用此方法

$("p").next(".selected").css("background", "yellow");  
Run Code Online (Sandbox Code Playgroud)

我在这里错过了什么?

javascript jquery

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

使用Linq to SQL,我如何Eager加载所有子项和任何嵌套子项结果

我在L2S Classes dbml中有5个表:Global >> Categories >> ItemType >> Item >> ItemData.对于下面的例子,我只去了itemtype.

    //cdc is my datacontext

DataLoadOptions options = new DataLoadOptions();

options.LoadWith<Global>(p => p.Category);
options.AssociateWith<Global>(p => p.Category.OrderBy(o => o.SortOrder));
options.LoadWith<Category>(p => p.ItemTypes);
options.AssociateWith<Category>(p => p.ItemTypes.OrderBy(o => o.SortOrder));

cdc.LoadOptions = options;

TraceTextWriter traceWriter = new TraceTextWriter();
cdc.Log = traceWriter;

var query =
from g in cdc.Global
where g.active == true && g.globalid == 41
select g;

var globalList = query.ToList();

// In this case I have hardcoded an id while I figure …
Run Code Online (Sandbox Code Playgroud)

c# asp.net linq-to-sql

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

如何使用jquery遍历dom中两个已知元素之间的元素?

我想允许用户单击一个起点然后单击一个结束点,并能够操作所选择的两个点之间的各种表单元素.

该页面是一个包含大量行的表,每行包含操作/保存该行中问题答案的相关信息.每行都有一个隐藏的值输入,以及是/否单选按钮,主要用于非熟练用户.带有问题的TD单元允许用户在是,否,空之间单击或切换.所以基本上我把页面上的单选按钮显示为是/否,并使用隐藏字段来存储值(1,0,-1)

这是我在单击问题单元格时用来设置答案的方法.

    $(".question").bind("click dblclick", function(e) {

        var newClassName = "AnswerUnknown";

        var hiddenAnswerId = $(this).attr('id').replace("question", "answer");

        var answer = parseInt($("#" + hiddenAnswerId).val());

        var newValue;

        switch (answer) {
            case -1:
                newClassName = "AnswerCorrect";
                newValue = 1;
                $("#" + $(this).attr('id').replace("answer", "radioYes")).attr('checked', 'checked');
                $("#" + $(this).attr('id').replace("answer", "radioNo")).attr('checked', '');
                break;
            case 1:
                newClassName = "AnswerWrong";
                newValue = 0;
                $("#" + $(this).attr('id').replace("answer", "radioYes")).attr('checked', '');
                $("#" + $(this).attr('id').replace("answer", "radioNo")).attr('checked', 'checked');
                break;
            default:
                newClassName = "AnswerEmpty";
                newValue = -1;
                $("#" + $(this).attr('id').replace("answer", "radioYes")).attr('checked', '');
                $("#" + $(this).attr('id').replace("answer", …
Run Code Online (Sandbox Code Playgroud)

jquery dom traversal

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

使用Jquery $ getJSON如何在Url param之后为[data]参数动态创建数据?

我没有问题让Json工作并解析json返回.我只是想知道如何构建一个动态的"无论数据是什么"并将其粘贴到[data]中以从那里传递我的参数而不是手动将它们附加到url.

来自jquery网站的例子:

$.getJSON("test.js", { name: "John", time: "2pm" }, function(json){
     alert("JSON Data: " + json.users[3].name);
});
Run Code Online (Sandbox Code Playgroud)

我以为我可以构建一个字符串(无论如何都没有意义)并将其放在{}内,但我显然不明白那一部分.

name:不是一个字符串,你不能在该部分中放置一个变量,所以我如何动态地将项目放入[data]中.

更新:谢谢你的答案.如果我以后没有找到有效值,或者我需要销毁它并重新创建它,我是否能够从对象中删除参数名称?我使用一些选择框来选择东西,我可能没有选择的东西,所以我不想传递参数名称/值.

jquery json getjson

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

为什么我不能检查连接字符串上的空引用?

可能是一个C#noob问题,所以不要激怒我.我试图这样做:

if (ConfigurationManager.ConnectionStrings["PrimaryConnectionString"].ConnectionString != null)
{
    // ...
}
Run Code Online (Sandbox Code Playgroud)

但我一直得到一个System.NullReferenceException.我想,因为它返回一个我可以检查null并继续前进的字符串.我花了一段时间才找到正确的方法:

ConnectionStringSettings cs = ConfigurationManager.ConnectionStrings["PrimaryConnectionString"];
if (cs != null)
{
    this.Connection.ConnectionString = cs.ConnectionString;
}
Run Code Online (Sandbox Code Playgroud)

所以在其他情况下,比如检查Session对象的某些值,我会null像这样检查:

if (Session["EmployeeID"] != null)
{
    _EmployeeID = System.Convert.ToInt32(Session["EmployeeID"]);
}
Run Code Online (Sandbox Code Playgroud)

所以我只是想知道你怎么知道什么时候能做或不能做检查null

c# asp.net null connection-string nullreferenceexception

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