⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 changesknownissues.htm

📁 LLBLGen_v1.21_Final_Doc。 这个是和LLBLGen_v1.21_Final_src配套的文档
💻 HTM
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" > 
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 7.0">
<TITLE>LLBLGen::Change log and known issues</TITLE>
<link rel="STYLESHEET" type="text/css" href="general.css">
</HEAD>
<BODY>
<br>
<h3>LLBLGen::Change log and known issues</h3>
<h4>Known Issues</h4>
<p>
	<b>Version 1.21.2003.716</b><br>
	<ul>
		<li>Generated code is not CLSCompliant due to the fact that the protected members of the abstract
			base class are seen as public methods by FxCop and the compilers, allthough they'll be private
			in any inherited class. This can be fixed easily in the generator but it will result in the 
			breaking of current custom classes which rely on the interface of the current abstract base class
			<i>DBInteractionBase</i>. Therefor, to keep current code working, I decided to move this feature to
			a later version, probably v2.0.</li>
		<li>Weird characters in table names and field names are not handled correctly. F.e. a '$' in a table
			name, will result in non-compilable code. Because it's bad practise to use those kind of characters
			in table names and field names, no fix is provided, allthough v2.0 will probably be handling this
			type of characters better.</li>
		<li>Fields with a Default Value constraint are properly handled by the generated code, however due to
			the nature of T-SQL, the default value is emitted hard-coded in the T-SQL stored procedure. This is
			done to allow users to Insert values for fields with a default value, even if there is a default
			value. When the default value constraint <i>changes</i> for a particular field, the stored procedures for
			the table should be regenerated. The .NET code is not changed. When a default value constraint is
			<i>removed</i> from a field, plus it's not NULLable, the .NET code for that table should be regenerated,
			together with the stored procedures, if the developer wants NULL value checks for the property of
			that field: fields with default value constraints don't have NULL value checks. </li>
		<li>When LLBLGen is started from a network share, or a shared drive, it may crash in a security violation.
			This is due to the fact that the default security settings of a default .NET installation are very strict 
			so that an application which is ran from a network share and which creates an instance of a class, will fail 
			to do so. You can work around this by OR copying the LLBLGen executable (including the manifest) to your 
			local harddrive, OR adjusting the security settings for the LLBLGen assembly to full trust. </li>
	</ul>
</p>
<h4>Change log</h4>
<p>
	<b>Version 1.21.2003.712</b><br>
	<ul>
		<li><b>ADDED</b>: New property in base class: 'RowsAffected' (Int32), which contains the amount of rows affected after 
			an Insert Update or Delete action. Will contain -1 when a Select action was called OR when the T-SQL option 'Include NOCOUNT'
				is checked, which effectually switches off row counting and thus no report can be given about the amount of 
				rows affected by an action.</li>
		<li><b>ADDED:</b> The generation of DeleteW&lt;foreignkey&gt;Logic routines. SqlServer 7 doesn't support cascading deletes so you'll need 
				these routines. SqlServer 2000 does support cascading deletes and these are the prefered way to delete orphaned
				FK rows since it doesn't require a transaction on the .NET level, everything will run in the DELETE statement's 
				transaction inside SqlServer.</li>
		<li><b>ADDED:</b> Because LLBLGen v1.x can only deal with 1 schema, only the schema 'dbo' is supported, which is normally the schema of
				the database owner. All objects not part of this schema are not listed and no code is generated for these objects.
				The filter is added to prevent null pointer exceptions when an object of another schema was selected. If you do not
				see an object in the tables/views list, you either are not making connection as a dbo or the object itself is not
				owned by the dbo. Normally all objects should be created by the dbo so in most cases you are not affected by this
				change/addition.</li>
		<li><b>FIXED:</b> Better folder browser. The new one now also lets you create directories. Still .NET 1.0 compatible.</li>
		<li><b>FIXED:</b> Minor GUI glitches.</li>
		<li><b>FIXED:</b> Slightly better exception viewer.</li>
		<li><b>FIXED:</b> When a database connection failed, all tabs except the connection tab were removed. This was a left-over from the
				old v1.1 codebase. Now all tabs stay in the GUI.</li>
		<li><b>FIXED:</b> When 'Include ErrorCode' was not checked, the T-SQL generator would emit a dangling ',' at the end of the last input
				parameter in UpdateW&lt;foreignkey&gt;Logic stored procedures. This is now fixed.</li>
		<li><b>FIXED:</b> The Tables/Views listview now has clickable column headers which sort the column ascending. Also fixed is the 
				initially sorting of the listview: now the listview is sorted on object type (table/view) and then on table/view name.</li>
		<li><b>FIXED:</b> Under SqlServer 7, the INFORMATION_SCHEMA.* views, which are part of a catalog (in SqlServer 2000 they're stored in
				the master catalog), were also listed. These are filtered out now, together with the sysalternates view which is also
				a system view.</li>
		<li><b>FIXED:</b> Under SqlServer 2000 sp3 the query used by LLBLGen to determine which fields are in which tables/views is utterly slow.
				A new query is added which is much faster; it now avoids slow hashtable constructions which were constructed by the
				query optimizer of SqlServer the old query used an INNER JOIN statement. </li>
		<li><b>NOTES:</b> This release contains some code borrowed from the upcoming LLBLGen Pro (some GUI classes). This code is written 
				using the .NET guidelines as described by Microsoft in the .NET reference manual. Therefor it might be a little
				akward to switch from the old LLBLGen v1.x code which is written using Hungarian Notation and the new code written
				in caMel/PasCal casing. The new code is located in the new folder browser and the new small form StringInput. All
				other new code is written in Hungarian Notation.</li>
		<li><b>NOTES:</b> The sourcecode is for VS.NET 2003. You need a converter for VS.NET 2002 to load the project in VS.NET 2002. Blame
				Microsoft for their hardcoded linkage between a texteditor and a compiler version.</li>
		<li><b>NOTES:</b> The documentation is updated, but only for the new features and a small section for VB.NET users.</li>
		<li><b>NOTES:</b> Changes made by others in the gotdotnet.com workspace of LLBLGen are not included in this release.</li>
		<li><b>NOTES:</b> No new updates will be made on this codebase after this release. 
				The next version will be LLBLGen Pro, the O/R mapper/code generator for .NET. </li>
	</ul>
</p>
<p>
	<b>Version 1.2.11112002</b><br>
	<ul>
		<li><b>FIXED:</b> .NET v1.0 has a bug in the SqlServer driver, where a NULL value can't be saved in a decimal or numeric
			field when the scale is set to 0. LLBLGen will now generate correct code which works around this bug
			by adjusting the scale with 1. This bug is reported to Microsoft. </li>
		<li><b>FIXED:</b> Paths in the folder browser are now found using case insensitive logic.
		<li><b>FIXED:</b> When LLBLGen was used on a Windows installation where the primary language was f.e. Turkish, LLBLGen
			would generate wrong parameters sometimes, when there were f.e. more than 1 lowercase character possible
			(Turkish has 2 lowercase 'i's) This has been corrected: it now uses culture independent lowercasing in
			all routines. (Thanks Gokhan Altinoren)
		<li><b>FIXED:</b> When the database design is implemented in a bad way and mistakes like 2 or more foreign key constraints on
			one single field are defined, LLBLGen would most of the time refuse to generate code for tables with these
			mistakes in them. Now, the query retrieving the fields of these tables will not fail anymore but will
			simply use one of the 2 or more foreign key constraints defined. </li>
	</ul>
</p>
<p>
	<b>Version 1.2.09212002</b><br>
	<ul>
		<li><b>FIXED:</b> When ObjectPooling is selected as a COM+ service, the method <b>CanBePooled()</b> wasn't created in the
			abstract base class.</li>
		<li><b>FIXED:</b> When a field is marked as <i>Excluded</i> and it has a Default Value constraint, LLBLGen will use that
			Default Value instead of the LLBLGen's default for the particular type of the field. </li>
		<li><b>FIXED:</b> When a field has a default value constraint and the field isn't NULLable, an extra ISNULL() 
			check is emitted in the INSERT stored procedure, to prevent the insertion of NULL's and to
			insert the default value instead. The default value is hardcoded in the stored procedure and
			requires a regeneration of the stored procedures when that value changes in the table/field
			definition. It's not very common to use default value contraints with non-NULLable fields 
			however nor are default value constraints changed a lot. </li>
		<li><b>FIXED:</b> Timestamp fields weren't excluded from INSERT and UPDATE queries. This has been fixed. Also,
	        the wrong default value for Timestamp fields has been removed: it's not used anymore.</li>
		<li><b>FIXED:</b> ADO.NET contains a bug which doesn't allow a precision for SqlParameter which is larger than 38. However, 
			SQLServer's float datatype has a precision of 53. Generated code contains this precision
			of 53 and fails at runtime. LLBLGen now contains a workaround for this bug and limits
			the precision to 38. When MS fixes this bug (if ever), this workaround will be removed.</li>
		<li><b>FIXED:</b> In the frmDirPicker code, when the start directory supplied doesn't exist, LLBLGen will crash.
	        This has been fixed: the first root node (probably 'A:') will be selected instead.</li>
		<li><b>FIXED:</b> When the fonts are enlarged in windows, the gui sizes are not, which means that the texts on
			the controls look horrible. This is fixed. It appears to be a bug in the .NET windowsforms
			renderer: when a tab page is added at runtime, the controls on it aren't auto-resized to meet
			the requirements of the large fonts. This is avoided now, by adding all tab pages at the start
			of the program, but disabling all controls on the tab pages except the controls on the connection
			tab.</li>
		<li><b>ADDED:</b>Added a known issues chapter to the documentation, plus changed the font into verdana which is much
	        more readable than Tahoma. </li>
	</ul>
</p>
<p>
	<b>Version 1.2.08112002</b><br>
	<ul>
		<li><b>FIXED:</b> Fixed some bug in the docs and a bug in the INSERT stored proc generator for SQLServer 7</li>
	</ul>
</p>
<p>
	<b>Version 1.2.08022002</b><br>
	First v1.2 release.
</p>
<div align="right" class="SmallFontTOC">
	<hr size="1" width="60%" align="right">
	LLBLGen v1.21 documentation. &copy; 2002-2003 <a href="http://www.sd.nl/" target="_blank">Solutions Design</a>
</div>
<br><br>
</BODY>
</HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -