使用 smo 创建返回 XML 的用户定义函数
Creating userdefined function returning XML using smo
我正在尝试创建一个返回 XML 的 UDF
Server s = new Server();
Microsoft.SqlServer.Management.Smo.Database db = s.Databases["EDI"];
UserDefinedFunction udf = new UserDefinedFunction(db, "fxx");
udf.Schema = "dbo";
udf.TextMode = false;
udf.FunctionType = UserDefinedFunctionType.Scalar;
udf.ImplementationType = ImplementationType.TransactSql;
udf.DataType.SqlDataType = SqlDataType.Xml;
udf.DataType = DataType.Xml("Xml");
udf.TextBody = "begin \r\n\t return '<root>test</root>' End;";
try {
udf.Create();
} catch (Exception ex) {
Debug.WriteLine(ex.Message);
}
并抛出异常
Collection specified does not exist in metadata : 'Xml'
我做错了什么?
udf.DataType=DataType.Xml("") 解决了问题..
我正在尝试创建一个返回 XML 的 UDF
Server s = new Server();
Microsoft.SqlServer.Management.Smo.Database db = s.Databases["EDI"];
UserDefinedFunction udf = new UserDefinedFunction(db, "fxx");
udf.Schema = "dbo";
udf.TextMode = false;
udf.FunctionType = UserDefinedFunctionType.Scalar;
udf.ImplementationType = ImplementationType.TransactSql;
udf.DataType.SqlDataType = SqlDataType.Xml;
udf.DataType = DataType.Xml("Xml");
udf.TextBody = "begin \r\n\t return '<root>test</root>' End;";
try {
udf.Create();
} catch (Exception ex) {
Debug.WriteLine(ex.Message);
}
并抛出异常
Collection specified does not exist in metadata : 'Xml'
我做错了什么?
udf.DataType=DataType.Xml("") 解决了问题..