小编LaR*_*ite的帖子

如何将字符串值转换为对象属性名称

这是我第一次在C#/ .NET中做这样的事情,并且有点让我想起使用eval()函数或动态脚本和生成HTML在JavaScript中可以轻松完成的事情.我说有一个从用户输入中获取的字符串string input = "foo".现在我想使用该值"foo"作为我拥有的对象的属性名称,cover以这种方式说:

string input = "foo";
//magic to convert string value to be used
//as a object property name goes here maybe...
var success = cover.foo;
Run Code Online (Sandbox Code Playgroud)

C#中有没有办法可以做这样的事情?可能使用反射?我已经尝试了,但我总是带着一个并没有真正解决问题的对象返回.

.net c# string reflection

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

如何获取linq`ForEach`语句来返回有关每个列表对象的方法调用的数据?

我有一个linq ForEach语句,为Report列表中的每个对象调用一个方法.此方法为每个调用返回一个数据表数组,我想以某种方式获取返回的数据.我怎么能用linq ForEach而不是旧学校foreach (var x in x's) { ... }呢?这是我的代码:

Reports.ForEach(r => r.LoadTableData(Event, Human, Animal, exData));
Run Code Online (Sandbox Code Playgroud)

我怎样才能回到各自DataTable[]的是LoadTableData正在恢复?

c# linq foreach linq-to-entities linq-to-sql

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

Request.IsAjaxRequest()总是在MVC4中返回false,尝试了SO中的所有建议等

让我先解释一下我尝试过的所有可能的解决方案.我现在已经jquery-unobtrusive-ajax.min.js在我的脚本文件夹中并将其添加到一个包中.我已尝试在视图页面本身上引用它,同时还有_Layout.cshtml页面,这就是我当前拥有该包的方式:

//BundleConfig.cs
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
            "~/Scripts/jquery-1.10.2.min.js",
            "~/Scripts/modernizr-2.6.2.js",
            "~/Scripts/jquery.validate.min.js",
            "~/Scripts/jquery.unobtrusive-ajax.min.js"));
Run Code Online (Sandbox Code Playgroud)

在主布局视图页面中引用此包,我的所有其他视图都派生自:

//_Layout.cshtml (at bottom of view, right before hitting </body></html>)
@Scripts.Render("~/bundles/jquery")
Run Code Online (Sandbox Code Playgroud)

最后在web.config中,我已将这些键添加到应用程序设置中:

//Web.config
<appSettings>
    <add key="ClientValidationEnabled" value="true" />
    <add key="UnobtrusiveJavaScriptEnabled" value="true" />
</appSettings>
Run Code Online (Sandbox Code Playgroud)

现在已经说明了,这就是我的Ajax调用的样子.我试图从一个独立的页面返回一些数据并将其替换为主页面中的内容,我认为相当简单:

@Ajax.ActionLink("Edit", "Index", "WeeklyTarget",
    new {id = item.WeeklyTargetId},
    new AjaxOptions {HttpMethod = "GET", UpdateTargetId = "hoursEdit", InsertionMode = InsertionMode.Replace})
Run Code Online (Sandbox Code Playgroud)

从索引视图中单击此操作链接时,将从控制器调用此链接:

public ActionResult Index(int? id, IEnumerable<WeeklyTarget> selection )
{            
    if (Request.IsAjaxRequest())
    {
    // return the partial view here
    }
}
Run Code Online (Sandbox Code Playgroud)

但正如我的标题所述,Request.IsAjaxRequest()仍将总是返回虚假.是什么赋予了???请帮忙......我已经筋疲力尽了所有的想法,调整和解决方法.我甚至尝试清理我的缓存,清洁解决方案等.

ajax asp.net-mvc jquery razor asp.net-mvc-4

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

在List <[linq_custom_object]>()上实现.Distinct()的正确方法是什么?

我有这个DNS_Log有四个属性的类.我已经创建了一个这些对象的列表,我试图过滤这些对象仅用于不同的事件.(当填充列表时,有很多重复)

这是填充的列表:

dnsLogs.Add( new DNS_Log { Destination = destination, 
                           Source_IP = sourceIp, 
                           Domain_Controller = domainController, 
                           DateTime = datetime });
Run Code Online (Sandbox Code Playgroud)

这是我试图过滤掉不同的那些:

dnsLogs = dnsLogs.Distinct().ToList();
Run Code Online (Sandbox Code Playgroud)

为什么这不起作用?我是否需要在不同的参数中使用一些linq表达式?我想将对象作为一个整体来比较它们的属性.有没有更简单的方法呢?

PS我已经玩了一个IEqualityComparer<DNS_Log>似乎工作正常的自定义,但我不知道如何在这种情况下实现它.

.net c# linq distinct

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

如何使用.NET中的属性初始化FormCollection?

我尝试过通常的方法:

var form = new FormCollection { "WeekList" = weekfilter, "PracticeList" = practicefilter}
Run Code Online (Sandbox Code Playgroud)

以及我能想到的所有可能的偏差,但最终不得不分开它:

var form = new FormCollection();
form["WeekList"] = weekfilter;
form["PracticeList"] = practicefilter;
Run Code Online (Sandbox Code Playgroud)

如何初始化此内联?可能吗?(我基本上试图模仿提交的表格)

.net c# initialization formcollection

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

为什么我不能在SQL Server的CASE语句列中使用filter my WHERE子句?

在我的select语句中有一个CASE WHEN THEN ELSE END AS语句,我无法在WHERE子句中进行过滤.我不明白为什么这会成为一个问题,有人可以解决这个问题吗?

SELECT        
CASE 
    WHEN m.Country IN ('CANADA', 'UNITED STATES', 'USA', 'MEXICO') THEN 'NA' 
WHEN m.Country IN ('BRAZIL') THEN 'JD2' 
    WHEN m.Country IN ('NZ', 'NEW ZEALAND', 'AUSTRALIA', 'AUSTRALASIA') THEN 'ANZ' 
ELSE 'Unknown' 
    END AS DerivedRegion,
    m.ID,
    m.[Account Name], 
m.[Display Name], 
m.[Last Name], 
m.[First Name]
FROM dbo.Users AS m
WHERE DerivedRegion = 'Unknown'
Run Code Online (Sandbox Code Playgroud)

有WHERE子句给我错误:列名'DerivedRegion'无效,为什么?

sql sql-server case where

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

如何获取按sql中的ID分组的最大行数

说我有这个表:(列:Row是基于列的计数ID)

ID  | Row  | State | 
1   | 1    | CA    |
1   | 2    | AK    |
2   | 1    | KY    |
2   | 2    | GA    |
2   | 3    | FL    |
3   | 1    | WY    |
3   | 2    | HI    |
3   | 3    | NY    |
3   | 4    | DC    |
4   | 1    | RI    |
Run Code Online (Sandbox Code Playgroud)

我想生成一个新列,RowID列在每列的列中按列编号最高.我怎么做到这一点?我一直在搞乱MAX(),GROUP BY和一些分区,但每次都会遇到不同的错误.很难正确地解决这个问题.这是我的目标输出:

ID  | Row …
Run Code Online (Sandbox Code Playgroud)

sql sql-server select group-by filter

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

CSS在加载时临时更改行的背景颜色.

我发现很多使用各种方法的例子,例如转换和动画来获得这样的工作,但似乎没有什么对我的特定用例有用.我希望能够在加载页面时暂时突出显示/更改元素的背景颜色.我已经让这个工作专门用于悬停在行上使用eas-in-out转换:元素的悬停,它工作得很好,但我似乎无法让这适用于页面的负载.

具体来说,我需要一个我选择的特定行(我已经使用JS)在页面加载时闪存一次就是这样.如何将此CSS添加到我的行?

这是我用于悬停的代码:

.FoodConsumptionTable tr {
    background-color: white;
    transition: background-color .75s ease-in-out;
   -moz-transition: background-color .75s ease-in-out;
   -webkit-transition: background-color .75s ease-in-out;
}

.FoodConsumptionTable tr:hover {
    background-color: #d2f9f3;
}
Run Code Online (Sandbox Code Playgroud)

这是我如何选择正确的行以尝试突出显示它:

var newRowId = $('#<%=hdnNewRowID.ClientID %>').val();        
$("input:hidden[value='" + newRowId + "']").eq(1).parent().parent().addClass("NewGridRow");
Run Code Online (Sandbox Code Playgroud)

html javascript css jquery css3

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