Как определить переменную времени компиляции в коде проекта Shared Code - PullRequest
0 голосов
/ 23 марта 2020

В настоящее время я работаю над добавлением некоторого кода в проект (XrmFakeEasy), который использует проект с общим кодом в качестве основного хранилища кода.

Я хочу внести изменения в следующие пути кода:

#if FAKE_XRM_EASY_2016 || FAKE_XRM_EASY_365 || FAKE_XRM_EASY_9

            // Connect to the CRM web service using a connection string.
            CrmServiceClient client = new Microsoft.Xrm.Tooling.Connector.CrmServiceClient(connectionString);
            return client;

#else
            CrmConnection crmConnection = CrmConnection.Parse(connectionString);
            OrganizationService service = new OrganizationService(crmConnection);
            return service;
#endif

В настоящее время код между #if FAKE_XRM_EASY_2016 || FAKE_XRM_EASY_365 || FAKE_XRM_EASY_9 и #else является серым, и Intellisense / Debugging не будет работать на нем.

Есть ли способ получить intellisense для серого кода или определить переменную времени компиляции в проекте с общим кодом?

1 Ответ

0 голосов
/ 24 марта 2020

Есть ли способ получить intellisense для серого кода или определить переменную времени компиляции в проекте с общим кодом?

Насколько я знаю, он спроектирован таким образом, и нет такой возможности изменить его.

В таком проекте текущее условие if недопустимо (из-за ложного условия) и находится в неактивной области, что означает что эта часть проекта не будет выполнена и, следовательно, не может получить ее Intellisense.

В качестве рекомендации вы можете попытаться присвоить истинное условие #if, в вашей ситуации, пожалуйста, сначала используйте это:

1) используйте это

#if true

////you can obtain the intellisense for this

#else 

.....

#endif

2) , затем измените на это:

#if false

   .........

    #else 

    //////add your code here with the related Intellisense

    #endif

3 ) затем измените на это:

#if FAKE_XRM_EASY_2016 || FAKE_XRM_EASY_365 || FAKE_XRM_EASY_9

  .........
 #else 

  ........

 #endif
...