コード例 #1
0
 public String GetNameForRequestField(
     SdkMessageRequest request, SdkMessageRequestField requestField,
     IServiceProvider services)
 {
     return(DefaultNamingService.GetNameForRequestField(
                request, requestField, services));
 }
コード例 #2
0
        public override string GetNameForRequestField(SdkMessageRequest request, SdkMessageRequestField requestField, IServiceProvider services)
        {
            string returnValue  = string.Empty;
            string defaultValue = base.GetNameForRequestField(request, requestField, services);

            foreach (var namer in _namers)
            {
                Trace.Debug($"Executing naming rule {nameof(GetNameForRequestField)} using {namer.GetType().FullName}");

                returnValue = namer.GetNameForRequestField(request, requestField, services);
            }

            if (string.IsNullOrEmpty(returnValue))
            {
                returnValue = defaultValue;
            }

            var cacheItem = DynamicsMetadataCache.SdkMessagePairs.GetOrParse(request.MessagePair);

            if (cacheItem != null)
            {
                cacheItem.GeneratedRequestTypeName = returnValue;
            }

            DynamicsMetadataCache.SdkMessagePairs.Set(cacheItem);

            return(string.IsNullOrEmpty(returnValue) ? defaultValue : returnValue);
        }
コード例 #3
0
ファイル: NamingService.cs プロジェクト: unchase/Xrm.Tooling
        /// <inheritdoc />
        public string GetNameForRequestField(SdkMessageRequest request, SdkMessageRequestField requestField, IServiceProvider services)
        {
            string value = _defaultService.GetNameForRequestField(request, requestField, services);

            value = ModifyPublisher(value);
            return(value);
        }
コード例 #4
0
 public MetadataRequestField(SdkMessageRequestField field)
 {
     Index        = field.Index;
     Name         = field.Name;
     CLRFormatter = field.CLRFormatter;
     IsOptional   = field.IsOptional;
 }
コード例 #5
0
        public string GetNameForRequestField(SdkMessageRequest request, SdkMessageRequestField requestField, IServiceProvider services)
        {
            var defaultName = DefaultService.GetNameForRequestField(request, requestField, services);

            return(CamelCaseMemberNames
                ? CamelCaser.Case(defaultName)
                : defaultName);
        }
コード例 #6
0
        async Task <string> INamingService.GetNameForRequestFieldAsync(SdkMessageRequest request,
                                                                       SdkMessageRequestField requestField, IServiceProvider services)
        {
            await CrmSvcUtil.CrmSvcUtilLogger.TraceMethodStartAsync("Entering {0}", MethodBase.GetCurrentMethod().Name);

            if (this._knowNames.ContainsKey(request.Id.ToString() + requestField.Index.ToString(CultureInfo.InvariantCulture)))
            {
                await CrmSvcUtil.CrmSvcUtilLogger.TraceMethodStopAsync("Exiting {0}", MethodBase.GetCurrentMethod().Name);

                return(this._knowNames[request.Id.ToString() + requestField.Index.ToString(CultureInfo.InvariantCulture)]);
            }
            var text = NamingService.CreateValidName(requestField.Name);

            this._knowNames.Add(request.Id.ToString() + requestField.Index.ToString(CultureInfo.InvariantCulture), text);
            await CrmSvcUtil.CrmSvcUtilLogger.TraceMethodStopAsync("Exiting {0}", MethodBase.GetCurrentMethod().Name);

            return(text);
        }
コード例 #7
0
 public CodeGenerationType GetTypeForRequestField(SdkMessageRequest request, SdkMessageRequestField requestField,
                                                  IServiceProvider services)
 {
     return(DefaultService.GetTypeForRequestField(request, requestField, services));
 }
コード例 #8
0
 protected virtual CodeGenerationType GetTypeForRequestFieldInternal(SdkMessageRequest request, SdkMessageRequestField requestField, IServiceProvider services)
 {
     return(DefaultService.GetTypeForRequestField(request, requestField, services));
 }
コード例 #9
0
 /// <inheritdoc />
 public string GetNameForRequestField(SdkMessageRequest request, SdkMessageRequestField requestField, IServiceProvider services)
 {
     return(NamingServiceImplementation.GetNameForRequestField(request, requestField, services));
 }
コード例 #10
0
        async Task <CodeTypeReference> ITypeMappingService.GetTypeForRequestFieldAsync(SdkMessageRequestField requestField,
                                                                                       IServiceProvider services)
        {
            await CrmSvcUtil.CrmSvcUtilLogger.TraceMethodStartAsync("Entering {0}", MethodBase.GetCurrentMethod().Name);

            await CrmSvcUtil.CrmSvcUtilLogger.TraceMethodStopAsync("Exiting {0}", MethodBase.GetCurrentMethod().Name);

            return(this.GetTypeForField(requestField.CLRFormatter, requestField.IsGeneric));
        }