[ 
https://issues.apache.org/jira/browse/IGNITE-12823?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17116157#comment-17116157
 ] 

Nikolai Kulagin commented on IGNITE-12823:
------------------------------------------

[~ptupitsyn], Yes, your decision is better. Unfortunately, I did not think of 
this. But I came up with one crazy case (maybe he is not alone) in which your 
decision needs to be finalized.

As I understand it, do you take a ticket to yourself?
{code:java}
Assert.AreEqual("PlatformComputeBinarizable2", prx.TestBinarizableArray(new[] 
{10, 11, 12}.Select(x => new PlatformComputeBinarizable2 {Field = 
x}).ToArray()));

....

            public string TestBinarizableArray(object[] x)
            {
                if (x.GetType() == typeof(PlatformComputeBinarizable[]))
                    return "PlatformComputeBinarizable";
                if (x.GetType() == typeof(PlatformComputeBinarizable2[]))
                    return "PlatformComputeBinarizable2";
                    
                return "object";
            }
...

Expected string length 27 but was 6. Strings differ at index 0.
  Expected: "PlatformComputeBinarizable2"
  But was:  "object"
{code}
 

> .NET: Service method with user type array parameter can't be found
> ------------------------------------------------------------------
>
>                 Key: IGNITE-12823
>                 URL: https://issues.apache.org/jira/browse/IGNITE-12823
>             Project: Ignite
>          Issue Type: Bug
>          Components: platforms
>            Reporter: Alexey Kukushkin
>            Assignee: Nikolai Kulagin
>            Priority: Major
>              Labels: .NET, sbcf
>         Attachments: ignite-12823-vs-2.8.patch
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> *+Setup+*
>  * Ignite Java service with a method having an array of user types as a 
> parameters, for example, caclulate(Parameter[] params)
> *+Actions+*
>  * .NET client calls the Ignite Java service, for example, 
> ignite.GetServices().GetServiceProxy<ICalculator>().calculate(new[] \{new 
> Parameter()});
> *+Expected+*
>  * The service method is called
> *+Actual+*
>  * Exception "Could not find proxy method 'calculate' in class ICalculator"
> *+Workaround+*
>  * Replace array of user types with array of objects in the service methods 
> signatures, for example, caclulate(Object[] params)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to