View previous topic :: View next topic |
Author |
Message |
Michael Guest
|
Posted: Sat Oct 27, 2007 9:43 am Post subject: Many errors on Project-Scan (Schemas) |
|
|
Hi,
I just performed a full scan of our major app.
It returned nearly 200 errors
At first glance they all appear to be dataschemas.
Since they don't need to be localized, can they be excluded?
If so, what should I use as Type & Context Definition? (Exclude Filters)
TIA,
Michael |
|
Back to top |
|
|
Infralution
Joined: 28 Feb 2005 Posts: 5027
|
Posted: Sun Oct 28, 2007 9:20 pm Post subject: |
|
|
Globalizer, by default, should only be scanning embedded resx files within the project files. When you say "dataschema" do you mean DataSet definitions? These normally have an ".xsd" extension and so should be ignored by Globalizer.
Can you please post the actual error messages you are getting while scanning. That might help us pinpoint the issue. _________________ Infralution Support |
|
Back to top |
|
|
Michael Guest
|
Posted: Wed Oct 31, 2007 9:26 am Post subject: |
|
|
Infralution wrote: | Can you please post the actual error messages you are getting while scanning. That might help us pinpoint the issue. |
E.g.:
Scanning Stegosoft.Stegosuite.v1\dlgSelectStimulModule, Invariant
** ERROR E120: Unable to load the type (Stegosuite.scmStimulReports) for component (dsStimulReports). Resources that are not explicitly set in the Invariant Resx file will not be able to be localized.
** ERROR E120: Unable to load the type (Stegosuite.scmStimulReportsTableAdapters.taStimulModule) for component (taStimulModule). Resources that are not explicitly set in the Invariant Resx file will not be able to be localized.
Scanning Stegosoft.Stegosuite.v1\dlgSelectStimulReport, Invariant
** ERROR E120: Unable to load the type (Stegosuite.scmStimulReports) for component (dsStimulReports). Resources that are not explicitly set in the Invariant Resx file will not be able to be localized.
** ERROR E404: Unable to load the assembly (stimulreport.schemas.scmStimulReports.Designer.vb) that defines type (Stegosuite.scmStimulReportsTableAdapters.taStimulReportsByModuleId). Check the Target Assembly Search Path is defined correctly.
** ERROR E120: Unable to load the type (Stegosuite.scmStimulReportsTableAdapters.taStimulReportsByModuleId) for component (taStimulReportsByModuleId). Resources that are not explicitly set in the Invariant Resx file will not be able to be localized.
Scanning Stegosoft.Stegosuite.v1\frmQueriedPreview, Invariant
Scanning Stegosoft.Stegosuite.v1\frmReportDesigner, Invariant
Scan complete -- 185 errors, 0 warnings
TIA |
|
Back to top |
|
|
Infralution
Joined: 28 Feb 2005 Posts: 5027
|
Posted: Wed Oct 31, 2007 10:48 am Post subject: |
|
|
Error 120 is caused because Globalizer.NET is trying to load a type referenced in your resx file (to scan for localizable properties) - but is unable to for some reason. The most common reason is that the type is defined in an assembly that has not been compiled for some reason - or that Globalizer.NET is unable to locate the compiled assembly. Check the Assembly Search Path (in the Properties tab for the workspace) includes a path to the directory containing the assembly that defines the type.
Another option is to turn off the "Scan Type Properties" option in the Workspace Scan Filter tab. This will stop Globalizer.NET attempting to load types referenced in the resx to look for additional localizable resources. This means that only those resource properties set in the Invariant form will be scanned by Globalizer.NET. This speeds up scanning and eliminates issues like you are having. The downside is that you won't be able to localize a resource unless it was set in the Invariant. For instance with "Scan Type Properties" enabled the RightToLeft properties of controls will be scanned even if they are not explicitly set in the invariant form. _________________ Infralution Support |
|
Back to top |
|
|
Michael Guest
|
Posted: Wed Oct 31, 2007 12:04 pm Post subject: |
|
|
Hi,
These are all typed datasets which are defined in the same project.
There is not external reference necessary for these datasets.
That's why I (still) don't understand why Globalizer.NET generates exceptions on this.
Regards |
|
Back to top |
|
|
Infralution
Joined: 28 Feb 2005 Posts: 5027
|
Posted: Wed Oct 31, 2007 9:05 pm Post subject: |
|
|
Globalizer.NET scans the resx files and then loads the assemblies referenced in them (if required). Did you check that the Workspace Assembly Search path includes the directory the compiled assembly is in?
If you could email one of problem resx files to support@infralution.com we can take a look and check it for issues that might be causing the problem. _________________ Infralution Support |
|
Back to top |
|
|
Infralution
Joined: 28 Feb 2005 Posts: 5027
|
Posted: Tue Nov 06, 2007 6:11 am Post subject: |
|
|
Thanks for the sample project - it helped us track down this issue. The problem was indeed related to datasets and would only occur if the "Scan Type Properties" checkbox is enabled for the target. In this case Globalizer.NET will attempt to load each of the components used by the form/control and scan them for localizable properties which have not been explicitly set in the Invariant resources.
When you add a typed dataset components to a form (and the dataset is defined in the same project) Visual Studio does not use the real type name when it serializes the component resources (instead it uses a pseudo type name). This was not being handled by Globalizer. Note that while this produced an error message in the output window, while scanning, for each form that uses a DataSet component it did not actually affect the result of the scan.
We have now released Version 1.4.0 of Globalizer.NET that fixes this issue. _________________ Infralution Support |
|
Back to top |
|
|
|