private IEntityFrameworkDataServicesProvider GetDataServicesProvider(ShellSettings shellSettings)
        {
            var providerName = shellSettings.GetDataProvider();

            if (string.IsNullOrWhiteSpace(providerName))
                throw new ArgumentException("因为数据服务提供名称为空,所以无法确定数据服务提供者。");

            var provider = _dataServicesProviders.FirstOrDefault(
                p => string.Equals(p.ProviderName, providerName, StringComparison.OrdinalIgnoreCase));

            if (provider == null)
                throw new NotSupportedException(string.Format("找不到名称为:{0}的数据服务提供程序。", providerName));

            return provider;
        }