I'm submitting a very simple query to WSI and am getting a reply that is malformed.
I submit the following code:
<AspDotNetStorefrontImport Version="7.1" SetImportFlag="true" AutoLazyAdd="true" AutoCleanup="true" Verbose="true" TransactionsEnabled="false">
<Query Name="cae42174-ee12-4725-b8c4-d2a183b52afc" RowName="3ef1a4d9-e709-4e4a-a6c5-eeab38b0454b">
<SQL>SELECT COUNT(*) FROM Category WHERE CategoryID = 1690</SQL>
</Query>
</AspDotNetStorefrontImport>
I get the following response:
<?xml version="1.0" encoding="utf-16"?>
<AspDotNetStorefrontImportResult Version="7.1" DateTime="3/19/2010 9:57:52 AM">
<Verbose Message="Import Starting" />
<Verbose Message="Processing Query, Name=cae42174-ee12-4725-b8c4-d2a183b52afc, RowName=3ef1a4d9-e709-4e4a-a6c5-eeab38b0454b" /><Query Name="cae42174-ee12-4725-b8c4-d2a183b52afc"><Verbose Message="SQL=select count(*) from category where categoryid = 1690" /><3ef1a4d9-e709-4e4a-a6c5-eeab38b0454b><>1</></3ef1a4d9-e709-4e4a-a6c5-eeab38b0454b></Query><Verbose Message="Import Completed" /></AspDotNetStorefrontImportResult>
I've created an XmlDocument object and have tried populating it with the .Load and .LoadXml methods and have received errors with both methods:
.Load Error:
ArgumentException - Illegal characters in path.
.LoadXml Error:
XmlException - Name canot begin with the '3' character, hexadecimal value 0x34. Line 4, position 261.
I even tried using a non-numeric string for my RowName and that didn't change my results much. Instead of getting an error saying that Name can't begin with a number I get an error that says that Name can begin with a '>'. That is the real bug that I'm dealing with because no matter what I do I always get results like:
<>1</>
Which, no matter how you look at it, is invalid XML. Thus I think there is a bug in the WSI processor.