我有以下代码 -
视图-
<% Html.BeginForm(); %>
<div>
<%= Html.DropDownList("DropDownSelectList", new SelectList( Model.DropDownSelectList, "Value", "Text"))%>
Run Code Online (Sandbox Code Playgroud)
控制器 -
public ActionResult Admin(string apiKey, string userId)
{
ChallengesAdminViewModel vm = new ChallengesAdminViewModel();
vm.ApiKey = apiKey;
vm.UserId = userId;
vm.DropDownSelectList = new List<SelectListItem>();
vm.DropDownSelectList.Add(listItem1);
vm.DropDownSelectList.Add(listItem2);
vm.DropDownSelectList.Add(listItem3);
vm.DropDownSelectList.Add(listItem4);
vm.DropDownSelectList.Add(listItem5);
vm.DropDownSelectList.Add(listItem6);
vm.DropDownSelectList.Add(listItem7);
}
[HttpPost]
public ActionResult Admin(ChallengesAdminViewModel vm)
{
if (ModelState.IsValid)//Due to the null dropdownlist gives model state invalid
{
}
}
Run Code Online (Sandbox Code Playgroud)
ViewModel-
public class ChallengesAdminViewModel
{
[Required]
public string ApiKey { get; set; }
[Required]
public …Run Code Online (Sandbox Code Playgroud) 大家好我想知道什么时候我更喜欢编写存储过程来编写编程逻辑并使用ORM或其他东西来提取数据.
大家好我只是好奇我是否可以做类似的事情 -
insert into Employee ( Select * from Employee where EmployeeId=1)
Run Code Online (Sandbox Code Playgroud)
我觉得有必要这么做很多次......所以只是好奇有没有办法实现它...
我有一个整数列表 -
List<int> intlist= new List<int>();
Run Code Online (Sandbox Code Playgroud)
我可以说 -
intlist.Sum();//I know sum() is already there as a function but I dont know how I can use it
Run Code Online (Sandbox Code Playgroud)
并获得该列表的总和而不循环它.
我想在实体框架中执行通用插入.这就是我写的 -
static public void Insert<T>(MyEntities DataContext, T obj) where T : class
{
try
{
DataContext.AddObject(DataContext,obj);
DataContext.SaveChanges();
}
catch (Exception e)
{
throw new Exception("Problems adding object" + e);
}
}
Run Code Online (Sandbox Code Playgroud)
但是你可以看到AddObject方法不是我想要的...它给出了异常,因为它需要我想要在对象中传递的enitysetname然后将该对象添加到我的数据库中.但我不能做AddtoObjectName(),因为我不知道对象.任何人都可以指出我正确的方向在这里..
我想基本上运行一个url,我将在幕后生成,而不是实际在浏览器中显示它给用户...我想我可以使用HTTPWebRequest或类似卷曲的东西?...但我需要真的只是基本上访问/运行生成的url?我怎样才能做到这一点 ?
我有这个功能 -
public int GetAvgResult()
{
var weeklyvalues=GetWeeklyValues();//gets list of weekly values.
if (weeklyvalues.Count == 0)
return 0;
return (weeklyvalues.Sum() / weeklyvalues.Count);
}
Run Code Online (Sandbox Code Playgroud)
是否有更短的方式来使用?:或者其他东西写这个?
场景:我们目前有一个网站,正在与管理网站建立几个网站.我们正在使用asp.net-mvc,SQL Server 2005和Entity Framework 4.因此,目前我们有一个解决方案,所有网站和所有网站都使用相同的实体框架模型.该模型目前有70多个表格,未来可能会有更多......大约400个?
问题:当实体框架模型变得更大时,它是否会变慢?我已经阅读了很多文章,他们说这是相当缓慢的,因为与ado.net相比,额外的映射层?另外,我们想过有多个模型,但似乎这也是一个不好的做法,当我们不使用任何ORM时,LINQ是否有用?
所以,我们只是好奇所有使用类似技术的大型网站在使用像EF这样的ORM时是否达到了良好的性能,或者他们从不选择ORM?我还参与了一个有超过150个表的LINQ to SQL应用程序,并且我们发现了一个巨大的启动惩罚,站点在第一次加载时需要15-20秒来响应.我很确定这是由于LINQ to SQL ORM的启动成本很高.如果有人可以分享他们的经验和想法,那会很棒吗?要遵循哪些最佳实践,我知道这取决于每个应用程序,但如果性能是一个问题,那么最佳步骤是什么?
我有这样的清单 -
Id Date
1 01/03/2011 14:15:23.320
1 01/03/2011 16:15:23.320
1 01/03/2011 18:15:23.320
1 01/04/2011 19:15:23.320
2 01/03/2011 14:15:23.320
2 01/03/2011 15:15:23.320
2 01/03/2011 18:15:23.320
2 01/05/2011 19:15:23.320
2 01/07/2011 20:15:23.320
Run Code Online (Sandbox Code Playgroud)
我想要的输出是 -
Id Date
1 01/03/2011
1 01/04/2011
2 01/03/2011
2 01/05/2011
2 01/07/2011
Run Code Online (Sandbox Code Playgroud)
那么我怎样才能在id的第一个列表上进行分组,只采用日期部分并在Linq中实现上述结果?
我想以某种方式使用c#中的反射将实体对象映射到业务对象 -
public class Category
{
public int CategoryID { get; set; }
public string CategoryName { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我的实体类具有相同的属性,CategoryId和CategoryName.任何使用反射或动态的最佳实践都将受到赞赏.
c# ×5
asp.net-mvc ×2
insert ×2
sql-server ×2
.net ×1
asp.net ×1
c#-3.0 ×1
c#-4.0 ×1
datetime ×1
field ×1
generics ×1
group-by ×1
orm ×1
performance ×1
preferences ×1
sql ×1
url ×1