我已经为此挣扎了一段时间,我遵循以下指南:
到目前为止,我已经采取了以下步骤:
- 创建新控制台项目
- 添加新EntityModel
-
将"测试"存储过程导入实体模型,sp如下所示:
CREATE OR REPLACE PROCEDURE SCHEMA.TEST(P_SALIDA OUT NUMBER, P_CURSOR1 OUT sys_refcursor, P_CURSOR2 OUT sys_refcursor) IS BEGIN P_SALIDA := 15; OPEN P_CURSOR1 FOR SELECT 125.72 "DECIMAL", 150 "INTEGER", 'JUST PASSING BY' "TEXT" FROM DUAL; OPEN P_CURSOR2 FOR SELECT 'JUST SOME TEXT' "TEXT" FROM DUAL; END TEST; /
- 将其添加到app.config中:
<add name="SCHEMA.TEST.RefCursor.P_CURSOR1"value="implicitRefCursor bindinfo='mode=Output'"/><add name="SCHEMA.TEST.RefCursorMetaData.P_CURSOR1.Column.0"value="implicitRefCursor metadata='ColumnName=DECIMAL;NATIVEDATATYPE=Number;ProviderType=DECIMAL'"/><add name="SCHEMA.TEST.RefCursorMetaData.P_CURSOR1.Column.1"value="implicitRefCursor metadata='ColumnName=INTEGER;NATIVEDATATYPE=Number;ProviderType=Int32'"/><add name="SCHEMA.TEST.RefCursorMetaData.P_CURSOR1.Column.2"value="implicitRefCursor metadata='ColumnName=TEXT;NATIVEDATATYPE=Varchar2;ProviderType=Varchar2'"/>
<add name="SCHEMA.TEST.RefCursor.P_CURSOR2"value="implicitRefCursor bindinfo='mode=Output'"/><add name="SCHEMA.TEST.RefCursorMetaData.P_CURSOR2.Column.0"value="implicitRefCursor metadata='ColumnName=TEXT;NATIVEDATATYPE=Varchar2;ProviderType=Varchar2'"/>
然后我尝试从我之前创建的实体模型导入函数,但当我选择复杂类型后单击获取列信息时,没有发生任何事情,它不会像obe教程那样显示光标。
如有任何帮助,我们将不胜感激。
感谢
编辑:
所以我今天又试了一次,这次它的表现不一样了。现在,当我单击导入函数对话框中的"获取列信息"按钮时,对话框将关闭,不会发生任何其他事情。
所以,这听起来可能很尴尬,但实际上这是Visual Studio的一个问题,我关闭了IDE并再次打开它,它就开始工作了。
尽管如此,我并不向任何人推荐这种方法,仅仅导入一个函数就需要做太多的工作。