CMIS-984: make type type conversion work on x86 target

git-svn-id: https://svn.apache.org/repos/asf/chemistry/portcmis/trunk@1750896 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/PortCMIS/data/DataImpl.cs b/PortCMIS/data/DataImpl.cs
index bd7028f..319b4f8 100644
--- a/PortCMIS/data/DataImpl.cs
+++ b/PortCMIS/data/DataImpl.cs
@@ -1075,7 +1075,7 @@
                     }

                     else

                     {

-                        return new BigInteger((long)value);

+                        return new BigInteger(Convert.ToInt64(value));

                     }

                 case PropertyType.Boolean:

                     if (!(value is bool))

@@ -1090,11 +1090,11 @@
                     }

                     return value;

                 case PropertyType.Decimal:

-                    if (!(value is decimal || value is double || value is float))

+                    if (!(value is decimal || value is double || value is float || value is sbyte || value is byte || value is short || value is ushort || value is int || value is uint || value is long))

                     {

                         throw new ArgumentException("Property '" + Id + "' is a Decimal property!");

                     }

-                    return (decimal)value;

+                    return Convert.ToDecimal(value);

                 case PropertyType.Uri:

                     if (!(value is string))

                     {

@@ -1190,7 +1190,7 @@
         /// <inheritdoc/>

         public override string ToString()

         {

-            return "Content Stream : " + FileName + " (" +MimeType +") " +

+            return "Content Stream : " + FileName + " (" + MimeType + ") " +

                 (Length == null ? "" : Length + " bytes" +

                 (Stream == null ? " no stream" : Stream.ToString()));

         }