Thank you for the report on this. We have reproduced the first and third issues. We will inform you when they are fixed.
As a workaround, you could try doing the following steps:
1) Open used template in the Model Explorer (to make the template available for editing, copy it to the model folder by right-clicking the template in Model Explorer and selecting 'Copy to Model Folder' from the shortcut menu); find the next lines
Code: Select all
if (method.MethodType == MethodType.MultipleResult) {
int count = 1;
foreach (BaseClass type in (IList)method.ReturnType) {
#>
[Devart.Data.Linq.Mapping.ResultType(typeof(<#= codeProvider.GetValidIdentifier(type.FullName) #>), <#= count++ #>)]
<#+
}
}
Change ' int count = 1;' to ' int count = 0;' in this code. Save changes and re-generate the code.
2) Re-create your stored procedures so that the OUT SYS_REFCURSOR parameters were the first ones, ie:
Code: Select all
create or replace procedure LargeTest
(
Result1 OUT SYS_REFCURSOR,
Result2 OUT SYS_REFCURSOR,
Name in Varchar2,
Id in INT,
DateFrom in Varchar2,
DateTo in Varchar2,
)
AS
BEGIN
...
END;
As for the second issue, if the workaround described above, does not help to solve it, please
send us a sample project with a SQL script for creating the procedure, so that we are able to reproduce it and investigate in more details.
Some useful information about using stored procedures with out cursor parameters in LinqConnect is available here:
http://www.devart.com/linqconnect/docs/ ... eters.html