小编cho*_*bo2的帖子

在Webapi中使用ViewModel是否有意义?

我开始学习webapi并发现自己正在做一些在MVC项目中有意义的东西,但可能没有意义.

通常在MVC项目中,我创建ViewModel并将其用作参数或将其与视图一起传回.

由于webapi中没有视图,我想将ViewModel作为参数没有意义.

我想知道我是否应该将我的EF域(代码优先)作为参数,并将数据注释放在这些之上.我通常会将注释放在视图模型属性上,因为我喜欢这个域.

然而,阻止我这样做的是我不是100%清楚我的MVC网站是如何工作的.

MVC站点是否只是吐出简单视图然后你使用Jquery来调用你的webapi,或者你只是调用MVC动作方法直接调用Webapi会调用的相同方法?

如果是第二种方式,那么我宁愿再次将数据注释放在我的视图模型上,然后我将相同的注释放在EF域和VM上,这似乎是多余的.

asp.net-mvc asp.net-web-api

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

IQueryable,List,IEnumerator之间的区别?

我想知道IQueryable,List,IEnumerator和我何时应该使用每个的区别?

例如,当使用Linq to SQL时,我会做这样的事情:

public List<User> GetUsers()
{
   return db.User.where(/* some query here */).ToList();
}
Run Code Online (Sandbox Code Playgroud)

现在我想知道我是否应该使用IQueryable.我不确定在列表中使用它的好处.

c# linq ienumerable list iqueryable

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

jQuery中有多个选择器链接?

通常,当我使用类作为选择器时,我尝试使用"id"选择器,因此它不会搜索整个页面,而只搜索类所在的区域.

但是我有一个部分视图,其中包含代码.此部分视图(公共代码)包含在表单标记周围.

我有:

<form id="Create">
// load common code in from partial view
</form>

<form id="Edit">
// load common code in from partial view
</form>
Run Code Online (Sandbox Code Playgroud)

现在在这个通用代码中我需要将插件附加到多个字段,所以我会这样做

$('#Create .myClass').plugin({ options here});

$('#Edit .myClass').plugin({options here});
Run Code Online (Sandbox Code Playgroud)

所以这几乎是相同的代码.我想知道是否有办法让它找到任何一个id?

编辑

当我的选择器有变量时,我遇到了问题

    my.selectors = 
    {
        A: '#Create',
        B: '#Edit',
        Plugin: ' .Plugin' 
    };

 $(selector.A+ selectors.Plugin, selector.B+ selectors.Plugin)
Run Code Online (Sandbox Code Playgroud)

似乎没有运行.

jquery jquery-selectors

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

将DateTime转换为UTC时遇到问题

我将所有日期都以UTC格式存储在我的数据库中.我问用户他们的时区,我想使用他们的时区加上我猜测的服务器时间来计算他们的UTC.

一旦我有了,我想搜索一下,使用新转换的UTC日期查看数据库中的范围.

但我总是得到这个例外.

System.ArgumentException was unhandled by user code  
Message="The conversion could not be completed because the   
supplied DateTime did not have the Kind property set correctly.  
For example, when the Kind property is DateTimeKind.Local,   
the source time zone must be TimeZoneInfo.Local.  
Parameter name: sourceTimeZone"
Run Code Online (Sandbox Code Playgroud)

我不知道为什么我会这样做.

我试过两种方法

 TimeZoneInfo zone = TimeZoneInfo.FindSystemTimeZoneById(id);
 // I also tried DateTime.UtcNow
 DateTime now = DateTime.SpecifyKind(DateTime.Now, DateTimeKind.Local); 
 var utc = TimeZoneInfo.ConvertTimeToUtc(now , zone );
Run Code Online (Sandbox Code Playgroud)

这失败了所以我累了

 DateTime now = DateTime.SpecifyKind(DateTime.Now, DateTimeKind.Local); 
 var utc = TimeZoneInfo.ConvertTimeBySystemTimeZoneId(now, 
                                           ZoneId, TimeZoneInfo.Utc.Id); …
Run Code Online (Sandbox Code Playgroud)

.net c# asp.net asp.net-mvc

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

如何将Javascript datetime转换为C#datetime?

我一直在阅读,如果你想从JavaScript日期转换为C#日期,你应该使用getTime(),然后将结果添加到C#DateTime.

假设我有这个JavaScript时间:

Date {Tue Jul 12 2011 16:00:00 GMT-0700 (Pacific Daylight Time)}
Run Code Online (Sandbox Code Playgroud)

它渲染到1310522400000毫秒

var a = new DateTime(1970, 01, 01).AddMilliseconds(1310522400000);

// result
7/13/2011 2:00:00 AM
Run Code Online (Sandbox Code Playgroud)

所以这是错的.我不确定我需要做什么.

.net javascript c# datetime

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

如何使用DataTables jquery插件按Date排序?

我正在使用datatables jquery插件,并希望按日期排序.

我知道他们有一个插件,但我找不到从哪里下载它

http://datatables.net/plug-ins/sorting

我相信我需要这个文件:dataTables.numericComma.js但我无法在任何地方找到它,当我下载数据表时,它似乎不在zip文件中.

我也不确定是否需要将自己的自定义日期排序器传递给此插件.

我试图对这种格式进行排序MM/DD/YYYY HH:MM TT(AM | PM)

谢谢

编辑

如何更改此项以按MM/DD/YYYY HH:MM TT(AM | PM)排序并将其更改为美国日期?

jQuery.fn.dataTableExt.oSort['uk_date-asc']  = function(a,b) {
    var ukDatea = a.split('/');
    var ukDateb = b.split('/');

    var x = (ukDatea[2] + ukDatea[1] + ukDatea[0]) * 1;
    var y = (ukDateb[2] + ukDateb[1] + ukDateb[0]) * 1;

    return ((x < y) ? -1 : ((x > y) ?  1 : 0));
};

jQuery.fn.dataTableExt.oSort['uk_date-desc'] = function(a,b) {
    var ukDatea = a.split('/');
    var ukDateb = b.split('/');

    var x = …
Run Code Online (Sandbox Code Playgroud)

jquery jquery-plugins datatables

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

需要帮助更好地了解Moq

我一直在查看Moq文档,而且评论太短,我无法理解它可以做的每件事.

我没有得到的第一件事是 It.IsAny<string>(). //example using string

使用它有什么优势而不仅仅是增加一些价值?我知道有人说如果你不关心这个价值就用这个,但如果你不关心价值,你不能只做"一个"或者什么吗?这似乎更像打字.

其次,什么时候你会不关心价值?我认为Moq需要价值来匹配东西.

我根本没有得到什么It.Is<>或如何使用它.我不明白这个例子以及它试图展示的内容.

接下来,我没有得到何时使用Times(及其AtMost方法和类似).为什么要限制设置的次数?我有一些AppConfig价值,我需要使用两次.为什么我要将它限制为,比如一次?这只会使测试失败.这是为了阻止其他人在你的代码或其他东西中添加另一个吗?

我没有得到如何使用mock.SetupAllProperties(); 它设置属性是什么?

我也不明白为什么有这么多不同的方式来建立一个房产以及它们之间的区别.该文件有:

SetupGet(of property)
SetupGet<TProperty>
Run Code Online (Sandbox Code Playgroud)

我注意到,很多在Moq的东西展示()<>-什么是他们,他们看起来像在使用中有什么区别?

我也不明白为什么他们有SetupGet.你不会SetupSet用来设置房产吗? SetupSet有五种不同的方法可以在文档中使用它.另外一个叫SetupProperty.所以我不明白为什么会这么多.

另外,我想知道lambdas中使用的变量是否独立于其他lambdas.例如:

mock.setup(m => m.Test);
stop.setup(m => m.Test);
Run Code Online (Sandbox Code Playgroud)

这样可以,还是变量之间会有一些冲突m

最后,我正在观看这个视频,我想知道它是否显示Visual Studio.他的Intellisense看起来与众不同.一个灯泡为他弹出(我很高兴我没有,因为它带回了netbeans的痛苦回忆),并且有一条线从一个开口支架到闭合支架等.

谢谢 :)

c# lambda moq mocking

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

如何使用绑定前缀?

如果我在db:Product中有这个表,请说

它有过

ProductId
ProductName
ProductType
Run Code Online (Sandbox Code Playgroud)

现在无论出于何种原因我无法命名我的文本框ProductName和ProductType,所以现在我的View方法看起来像这样

public ViewResult Test([Bind(Exclude ="ProductId")] Product)
Run Code Online (Sandbox Code Playgroud)

因此,通过我的游戏,这个产品中没有任何东西可以匹配,因为它们有不同的名称.

所以我猜这是Prefix的用武之地,但我不知道如何使用它.我也不知道如何使用它并同时排除.

有人能举个例子吗?

asp.net-mvc asp.net-mvc-2

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

如何在javascript中将完整日期转换为短日期?

我有一个像这个星期一,2010年1月9日的日期

我现在想把它转换成

1/9/2010 mm/dd/yyyy

我试着这样做

    var startDate = "Monday, January 9, 2010";
    var convertedStartDate = new Date(startDate);
    var month = convertedStartDate.getMonth() + 1
    var day = convertedStartDate.getDay();
    var year = convertedStartDate.getFullYear();
    var shortStartDate = month + "/" + day + "/" + year;
Run Code Online (Sandbox Code Playgroud)

但是,它必须认为日期是以不同的格式,因为白天返回1而不是9.

javascript formatting date

41
推荐指数
4
解决办法
10万
查看次数

什么是AutoFixture AutoMoq?

当我注意到AutoFixture AutoMoq时,我正在寻找nuget并想要导入moq.我看到AutoFixture是为了帮助更快地编写TDD,但我找不到AutoMoq的任何示例以及它与AutoFixture的不同之处.

有人能指出我这个AutoMoq所以我可以看到它在做什么.

moq autofixture

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