我想知道是否有更好/更简单的方式来加载用户的生日.
我有一个User实例,它有属性,包括这个:
public DateTime? BirthDate { get; set; }
我想要做的是加载从一个日期到另一个日期有bdays的用户:
public IEnumerable<User> LoadUsersByBirthday(DateTime from, DateTime into)
Run Code Online (Sandbox Code Playgroud)
我不关心生日年份,例如,如果我有3个生日用户:
LoadUsersByBirthday(new DateTime(2990, 3, 1), new DateTime(3013, 4, 15)) 应该返回2个用户 - 第1和第3.
我的方法看起来像这样:
public IEnumerable<User> LoadUsersByBirthday(DateTime from, DateTime into)
{
var days = DateTime.DaysInMonth(from.Year, from.Month);
var u1 = _unit.User.Load(u => ((DateTime) (u.BirthDate)).Month == from.Month
&& ((DateTime) (u.BirthDate)).Day >= from.Day
&& ((DateTime) (u.BirthDate)).Day <= days);
var u2 = _unit.User.Load(u => ((DateTime) (u.BirthDate)).Month > from.Month
&& ((DateTime) (u.BirthDate)).Month < into.Month);
var u3 = …Run Code Online (Sandbox Code Playgroud) 我有一个简单的角度应用程序,它使用指令并使用链接方法动态地将内容附加到指令.我必须编译新的内容,但如果我这样做,似乎控制器调用了两次.
app.directive('comment', function ($compile) {
return {
restrict: 'E',
template: '<div class="commentItem" ng-controller="MainCtrl">' +
'<span class="comment">{{comment.message}}</span>' +
'<span class="replyToComment" ng-click="doSmth()">doSmth</span>' +
'</div>',
scope: {
comment: '='
},
link: function (scope, element, attrs) {
if (angular.isArray(scope.comment.comments)) {
element.append("<comments comments='comment.comments'></comments>");
$compile(element.contents())(scope);
}
}
};});
Run Code Online (Sandbox Code Playgroud)
有办法避免这种情况吗?
我正在用加密技术写我的裁判工作,今天我试图从字符串中获取一个BigInteger数字.但我发现从字符串中获取BigInteger数字的唯一方法是
UTF8Encoding Encoding = new UTF8Encoding();
var bytes = Encoding.GetBytes(myString);
var myBigInteger = new BigInteger(bytes);
Run Code Online (Sandbox Code Playgroud)
但这不是我需要的方式.我需要一些能够完全返回BigInteger表示字符串的东西.例如,如果我有
var myString = "1234567890";
Run Code Online (Sandbox Code Playgroud)
我想要我的BigInteger
BigInteger bi = 1234567890;
Run Code Online (Sandbox Code Playgroud)