Conditional attribute exception with code contracts

I get an exception when I use code contracts with the following code:

public void Debug(
            dynamic message1, 
            dynamic message2 = null, 
            dynamic message3 = null, 
            dynamic message4 = null, 
            dynamic message5 = null, 
            dynamic message6 = null)
     {
         Contract.Requires(message1 != null, 
             "First Logged Message cannot be null");
     }

I am trying to adjust project settings so that checks are performed at runtime.

The exception is "Cannot dynamically call the method" Required "because it has a conditional attribute." I re-read the Code Contracts documentation a couple of times and performed some searches, but I don’t understand where the conditional attribute comes from.

+5
source share
2 answers

Requires Conditional("CONTRACTS_FULL"). , CONTRACTS_FULL . , , , , , . ( ).

, , message1 () , , .

     object m1 = message1;
     Contract.Requires(m1 != null, "First Logged Message cannot be null");
+11

, . require.

dynamic message1;
Contract.Requires((object)message1 != null,"First Logged Message cannot be null"); 
+1

All Articles