SqlXmlCommand 개체를 사용하여 데이터베이스에서 데이터를 가져 오는 레거시 응용 프로그램을보고있는 중 문제가 있습니다. .xsd 파일에는 사용중인 테이블과 필드, 관계 등이 있습니다. 우리가 가지고있는 문제는 대부분 시간대로 작동하지만 전부는 아닙니다. SQL Server에서 실제로 실행되는 내용을 확인하는 방법이 있는지 궁금합니다. SQL 프로파일 러가 설치되어 있지 않아 옵션을 사용할 수 없습니다.보기 SQL 서버의 SqlXmlCommand.ExecuteCommand()
SQLXML: error loading XML result (XML document must have a top level element.)
우리는하지에 XML을 일으키는 일부 데이터에 이상이 있음을 믿습니다
이SqlXmlCommand xcmd = new SqlXmlCommand(DataAccess.OleDbConnectionString);
xcmd.CommandType = SqlXmlCommandType.XPath;
xcmd.SchemaPath = Path.GetFullPath(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"myXsd.xsd"));
xcmd.XslPath = Path.GetFullPath(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, String.Format(@"myXsl.xsl", ReportType)));
xcmd.CommandText = "id[@PK=$PK]";
SqlXmlParameter p = xcmd.CreateParameter();
p.Name = "@PK";
p.Value = Id;
using (Stream s = xcmd.ExecuteStream()) { ... }
이 오류로 ExectureStream()에서 불면 :
코드는 같다 제대로 생성하고, 그 이유는 정확히 무엇이 실행되는지를보고 싶기 때문입니다.
건배
를 실행할 수 있습니다 확장 된 이벤트. 이러한 흔적 중 하나를 설정하는 것은 약간 까다로울 수 있습니다. 당신이 그것을 한 번하면 확실히 여러 번 다시 사용할 것입니다. 나는 그것이 노력할만한 가치가 있다고 생각한다. –