Here are a few things going on.
First you perform a binary operation. So you need to override the TryBinaryOperation method . It will be called first before converting. Then, from the TryBinaryOperation method, you can perform the conversion.
-, - TryBinaryOperation , :
int sum = myDynamicObject + 1;
, , . DLR, .
Update:
. "1 + myDynamicObject" "myDynamicObject + 1" TryBinaryOperation, - TryBinaryOperationFromRight, DynamicObject .