小编M.R*_*ari的帖子

无法隐式转换类型'System.DateTime?' 到'System.DateTime'.存在显式转换

我想转换日期时间?todatetime但我收到此错误:

错误7无法隐式转换类型'System.DateTime?' 到'System.DateTime'.存在显式转换

这是我的代码:

public string ConvertToPersianToShow(DateTime?  datetime)
{
  DateTime dt;
  string date;
  dt = datetime;

  string year = Convert.ToString(persian_date.GetYear(dt));
  string month = Convert.ToString(persian_date.GetMonth(dt));
  string day = Convert.ToString(persian_date.GetDayOfMonth(dt));

  if (month.Length == 1)
  {
     month = "0" + Convert.ToString(persian_date.GetMonth(dt));
  }
  if (day.Length == 1)
  {
     day = "0" + Convert.ToString(persian_date.GetDayOfMonth(dt));
  }

  //date = Convert.ToString(persian_date.GetYear(dt)) + "/" + 
  Convert.ToString(persian_date.GetMonth(dt)) + "/" +
  //Convert.ToString(persian_date.GetDayOfMonth(dt));
  date = year + "/" + month + "/" + day+"("+dt.Hour+":"+dt.Minute+")";

  return date;
}
Run Code Online (Sandbox Code Playgroud)

c# linq

34
推荐指数
3
解决办法
9万
查看次数

验证嵌套表单而不影响父表单

angularjs 1.5中的嵌套表单中存在验证问题,github中存在一个问题.

但是该主题中的2个人提供了解决方案,其中一个人已经开始使用angularjs核心,这是ngFormTopLevel指令,另一个是由一个名为isolate-form的用户提供的.

但是他们都不能处理这种情况而且不能为我工作......至少!

我们假设这个结构:

<ng-form name="X1" novalidate>

    <ng-form name="X2" novalidate isolate-form>

        <input name="Input01" ng-model="input1" required />
        <p ng-show="X2.Input01.$touched && X2.Input01.$invalid">input is not valid</p>

        <input name="Input02" ng-model="input2" required />

        <input type="button" id="ButtonX2" value="Submit Nested Form" ng-disabled="X2.$invalid" />

    </ng-form>

<input name="Input03" ng-model="input3" required ng-minlength="5" />

<input type="button" id="ButtonX1" value="Submit Nested Form" ng-disabled="X1.$invalid" />

</ng-form> 
Run Code Online (Sandbox Code Playgroud)

tl; dr:ButtonX1依赖于嵌套表单验证,它不应该!


测试案例1:

第1步:使用任何文本和超过5个字符填充input3.

预期:应启用ButtonX1.

结果:ButtonX1仍处于禁用状态.


测试案例2:

第1步:使用任何文本填充input1.

第2步:使用任何文本填充input2.

预期:应启用ButtonX2.

结果:ButtonX2已启用.


测试案例3:

第1步:使用任何文本和超过5个字符填充input3.

第2步:使用任何文本填充input1.

第2步:使用任何文本填充input2.

预期:应启用ButtonX1和ButtonX2.

结果:ButtonX1和ButtonX2已启用.


另一个问题是当Input01无效时,嵌套表单中的P标签不显示.我尝试了isolateForm和ngFormTopLevel,但他们都遇到了这个问题.

validation angularjs angularjs-ng-form

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

history.pushState在控制器中不起作用

我的html中有两个按钮:

<a href="" class="sbtn sbtn-default" ng-click="GoToNext()"><i class="fa fa-angle-right"></i> Next </a>
<a href="" class="sbtn sbtn-default" ng-click="GoToPrev()"> Prev <i class="fa fa-angle-left"></i></a>
Run Code Online (Sandbox Code Playgroud)

然后在我的控制器中:

$scope.GoToNext = function () {
    var nextPage = getNextPage("next");

    history.pushState(null, "Site Title", nextPage);
    getQuestion();
}

$scope.GoToPrev = function () {
    var prevPage = getNextPage("prev");

    history.pushState(null, "Site Title", prevPage);
    getQuestion();
}
Run Code Online (Sandbox Code Playgroud)

和getNextPage函数是:

function getNextPage(type) {

    var querystr = window.location.pathname.split('/')[4];
    var currentQuestion = querystr.split("-")[1];
    var currentBook = querystr.split("-")[0];

    switch (type) {
        case "next":
            return ((currentBook + "-") + (+currentQuestion + +1));

        case …
Run Code Online (Sandbox Code Playgroud)

pushstate angularjs html5-history

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