小编Lar*_*sen的帖子

申请时间的设计模式?

如果构建业务流程取决于它的时间[1]的系统,则不能DateTime.Now在代码中使用或类似,因为您必须处理测试,例如,未来的月末或年终场景.使用SSL证书时通常不能更改操作系统时间,因为对分布式系统执行更正是很复杂的.

一种选择是创建一个单一服务,该服务可由返回当前时间的所有系统访问.在生产中它可以返回DateTime.Now并且在测试中它可以在月末的情景中返回2月28日的游戏时间.

但有更好的方法吗?就像更加面向数据库的方法,因为它可以带来更好的性能?或者你会放入分布式缓存?这有一些众所周知的设计模式吗?

[1]典型例子:保险系统,核心银行系统实施的业务流程......

c# testing design-patterns

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

使用FusedLocationApi和Xamarin 3

当我尝试使用Xamarin活动中的FusedLocationApi时,我遇到了很多问题.这里列出的代码使用的方法位置Xamarin已被标记为过时,因此它没有编译.我的实现如下.我的问题是,如果这是方法,或者我更容易忽视一些事情?LocationHandler由我的活动使用,例如OnCreate,OnResume,OnPause调用connect和disconnect方法.OnChangedLocation方法当然应该做一些更聪明的事情.

using System;

using Android.Gms.Common;
using Android.Gms.Common.Apis;
using Android.Gms.Location;
using Android.Locations;
using Android.Util;
using Android.OS;
using Android.Content;


namespace WithKidsAndroid
{
    public class LocationHandler : Java.Lang.Object, IGoogleApiClientConnectionCallbacks, IGoogleApiClientOnConnectionFailedListener, Android.Gms.Location.ILocationListener
    {

        private IGoogleApiClient _googleAPI;
        private Context _context;

        public LocationHandler(Context context)
        {
            if (context == null)
            {
                throw new ArgumentNullException("context");
            }
            else
            {
                _context = context;
            }
            initializeGoogleAPI();
            LocRequest = new LocationRequest();
        }

        public LocationHandler(Context context, LocationRequest request)
        {
            if (context == null)
            {
                throw new ArgumentNullException("context");
            }
            else …
Run Code Online (Sandbox Code Playgroud)

c# android xamarin.ios xamarin google-play-services

5
推荐指数
1
解决办法
999
查看次数

如何更改Materializecss选择下拉列表中的文本颜色?

我有一个Materializecss下拉选择如下:

      <form class="col s12">
        <select id="something" [ngModel]="_model.selectedPartyType"
            (ngModelChange)="onSelectChange($event)" name="partyTypeSelection"
            materialize="material_select" class="input-field col s12 m12 l4"
            >
           <optgroup *ngFor="let data of _model.codeTable.codeTokensG" [label]="data[0]">
             <option *ngFor="let cValue of data[1]" [value]="cValue">
               {{_model.codeTable.getCode(cValue).description}}
        </   option>
           </optgroup>
       </select>
      </form>
Run Code Online (Sandbox Code Playgroud)

如何更改选项文本的默认蓝绿色?我试过添加

.dropdown-content li>span {
  color: #000 !important;
}

.dropdown-content li>a {
  color: #000 !important;
}

.select-content li>span {
  color: #000 !important;
}

.select-content li>a {
  color: #000 !important;
}
Run Code Online (Sandbox Code Playgroud)

到我的css文件,但没有这个和变种运气.如果我在Chrome开发者工具中取消选择颜色属性

.dropdown-content li>span
Run Code Online (Sandbox Code Playgroud)

是按照我的意愿.

我怎样才能改变颜色?

css materialize material-design

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