写好的存储过程:drop type JPWATER.mylist;
drop type JPWATER.mylistnew;
drop procedure JPWATER.InsertBs_labelList;create or replace type JPWATER.mylist as object (
    TITLE varchar2(200),
    LABEL varchar2(2000),
    X NUMBER,
    Y NUMBER
);create or replace type JPWATER.mylistnew as table of JPWATER.mylist;create or replace procedure JPWATER.InsertBs_labelList(
mylistnewPara in mylistnew) 
as
var_mylist mylist;
var_mylist_id number;
begin
    for i in 1..mylistnewPara.count loop
        var_mylist:=mylistnewPara(i);
        
        select JPWATER.BS_LABEL_SEQUENCE.nextVal into var_mylist_id from dual;
        
        insert into JPWATER.BS_LABEL(ID,TITLE,LABEL,X,Y)values(var_mylist_id,var_mylist.TITLE,var_mylist.LABEL,var_mylist.X,var_mylist.Y);
    end loop;
end InsertBs_labelList;
调用存储过程:(未完成)using (OracleConnection conn = new OracleConnection(connectionString))
            {
                conn.Open();
                OracleCommand cmd = new OracleCommand();
                cmd.Connection = conn;
                cmd.CommandText = "JPWATER.InsertBs_labelList";
                cmd.CommandType = CommandType.StoredProcedure;
                OracleParameter Param1 = new OracleParameter("mylistnewPara", 这里给一个Oracle类型,因为我的是自定义类型,所以这里不知道该怎么写);
                Param1.Direction = ParameterDirection.Input;
                Param1.Value = 这里给参数赋值,好像给一个要插入的集合吧;
                cmd.Parameters.Add(Param1);
                cmd.ExecuteNonQuery();                string sss = "";
                
            }
我的具体问题:
1、怎么给存储过程传递自定义类型的参数?
2、针对我写的这个存储过程,在C#里这个参数怎么写,要写个什么样的集合,才可以在我写的存储过程中正常使用?