Ticket #552 (closed defect: fixed)

Opened 6 months ago

Last modified 3 months ago

Managed StringElement garbles the .net string assigned to it

Reported by: jng Assigned to: gregboone
Priority: critical Milestone:
Component: FDO API Version: 3.4.0
Severity: 1 Keywords:
Cc: External ID:

Description

Create a ODBC provider connection to MSTest.mdb in the GenericRdbms? unit test directory

Execute an IDescribeSchema with:

SchemaName? = "Fdo" ClassNames? = { <any table in that database> }

The execution will fail, and the provider will report the following message:

Unable to find class '<table name>'

The only thing here is that <table name> has been somehow garbled by the provider, and I am assuming it is trying to execute under this garbled name.

For example: 'Cities' gets turned into 'ቈܮties' by the provider.

Attachments

Program.cs (2.4 kB) - added by jng on 10/06/09 09:49:01.
C# source demonstrating the problem

Change History

10/04/09 20:45:47 changed by jng

  • component changed from ODBC Provider to GenericRdbms API.

10/04/09 20:46:19 changed by jng

  • priority changed from major to critical.
  • severity changed from 3 to 1.

10/06/09 09:49:01 changed by jng

  • attachment Program.cs added.

C# source demonstrating the problem

10/06/09 09:55:43 changed by jng

  • component changed from GenericRdbms API to FDO API.
  • summary changed from ODBC provider garbles the specified class name when using enhanced IDescribeSchema to Managed StringElement garbles the .net string assigned to it.

In writing the attached sample code, I've discovered that the StringElement? wrapper class is quite possibly the culprit here.

When you feed a .net string to a new StringElement? instance, inspecting the String property (StringElement?.String) returns a garbled version of the original string.

11/08/09 10:04:33 changed by jng

  • status changed from new to closed.
  • resolution set to fixed.

Confirmed that this has been resolved in 3.4.1 RC2