A few words written before open source:
1: the source code of the latest version is not completely criticized. It seems that the failure of open-source in China is the reason why open-source providers are moving towards source sealing.
I want to say:
1: What have you done after you get the source code? Gave feedback? Help publicity? Do you have wood or wood? What's terrible is that you get and scold.
2: Some rich people in China are writing source code?
2: accused of charging fees under the guise of open source. Since it is open source, fees are still charged, which is too unauthentic.
I want to say:
1: Open-Source! = Free of charge, these common sense are everywhere on the Internet. Don't take open source as a joke. Although domestic piracy is very serious, it is still necessary to improve the quality.
2: Non-commercial use is free of charge, but the author's intellectual property rights and labor achievements must be respected.
3: Commercial authorization is normal. It is intended for commercial and commercial purposes. you should understand this.
3: No source code for the data layer. Who will use it? Dare not use
I want to say:
1: Microsoft is not open-source. You are using the same software. Microsoft has a bunch of bugs. You are using the same software. Microsoft updates are on a yearly basis. You can wait.
Of course, you can say that people are Microsoft, and what are you? If there is no trust, smile and pass.
2: There is no encryption or obfuscation in the released version, and there is no such capability. I believe the source code is just a matter of security.
3: I suddenly think of the words that the big stone said in the group: people who have worked hard for a few years, give you free use, and take full responsibility for you?
4: an open-source version is available. Don't close your eyes and talk about it [. NET 3.5, 4.0, and 2.0 have been around for so long. version is also widely used, not only the latest version.]
5: authorized commercial users all have the source code of the latest released version. If you need to commercialize the product, you can also perform commercial authorization.
Well, I have a few more statements. The following is the text:
In previous open-source versions, we mentioned that V1.5.5 is the final open-source version. Therefore, V2.0 has never had any relevant open-source plans.
At the same time, from my series of articles, I can find that I am busy with many things:
CYQ. Data, CYQ. DBImport, CYQ. IISLogsViewer, Autumn garden, love talk, Autumn open source team and a bunch of articles.
All of this, before, after, and after, I am alone in the ups and downs, inside and outside the sky, north and south, it is inevitable that a lot of things fall apart.
There is still no time for the "Silverlight + WCF network chess" series to continue.
Hope everyone understands and understands.
Open-source, V2.0
This time, CYQ. Data framework V2.0 is also open-source. Compared with the previous version, V2.0 is an absolute version leap, mainly manifested in:
1: Introduce multi-database support.
2: Introduce the AOP function.
3: JSON support is introduced.
4: Introduce the extended binding mechanism.
Compared with V1.N, V2.0 has more than half of internal class adjustment or rewriting. However, there is a constant focus: the usage of all external methods remains unchanged and backward compatible.
The following screenshot shows the source code project of V2.0:
The following are historical modification and update records:
V1.3 started
Records from:
1: MAction: automatically calls Close () When Update/Insert/Fill fails ()
2: MAction: added the ResetTable function.
3: MAction: Modify the Fill method: if there are multiple records, return failure. Change to return the first record.
4: OutPutData: Add ExeCreateProc to directly execute the paging storage process.
Records from:
1: MAction: returned result of closed DataSQLHelper
2: MAction: added SetAutoPrefix. Multiple Control prefixes can be uploaded.
3: MAction: The Insert/Update method enables Auto to obtain values.
4: MProce: New Production Class used to execute the Stored Procedure
5: OutPutData: new export of Stored Procedure Enumeration
V1.4 started
Records from:
1: MProc: Modify the ExeScalar Method to the generic method public T ExeScalar <T> ()
2: SQLString: The where condition filters out the "--" comment and ";" Semicolon
Records from 2010-08-23:
1: SQLHelper, DataType, and Log modify the access modifier, which is not open to the outside world.
2: MProc: the modification of access modification by SQLHelper is not open to the outside world, and the inheritance is changed to the built-in class.
3: MProc: Change the returned DataTable to MDataTable to hide the returned SqlDataReader.
4: MDataTable: added the ToDataTable function.
Records from:
1: DataType: the conversion methods for merging data types are GetDbType and GetSqlType, and other additional methods are commented out.
2: Log: Modify the return type of WriteLog to void. An exception is thrown when an exception Log fails to be written to the database.
3: SQLHelper: optimize code and delete useless Methods
4: MAction: adds intelligent detection. The constructor does not need to input database configuration items. For multi-database applications, the rule enumeration is [[U/V/P] _ + database name + Enum], and the configuration file database link configuration item is [database name + Conn].
5: CacheHelper: optimizes the code and reduces the number of lines of code.
6: OutPutData: added the export of multi-database projects, and modified the enumeration export of tables and views to [[U/V/P] _ database name + Enum] format.
7: SQLHelper: added transaction support
8: MAction: by default, transaction support is enabled for all operations until the transaction ends when Close () or EndTransation () is called or an exception occurs.
Records from:
1: CacheHelper: modified several function names.
2: MProc: modify several method names and automatically add the "@" prefix to the parameters.
3: OutPutData: added export of stored procedure parameters
4: add all comments and sample generate documents
Records from:
1: OutPutData: added the log table generation method.
V1.5 started
Records from:
1: MDataTable: optimizes data binding, improving the speed.
2: SQLOutPut: corrected the generation of enumeration and log tables in the SQL 2000 database.
3: DataType: The GetSqlType method adds the ntext type conversion. If you modify the conversion method, the default return value is SqlDbType. NVarChar.
Records from 2010-09-04:
4: added support for Guid-type IDs.
5: MProc added support for SQL statements
6: OutPutData: optimizes the code and deletes unused functions.
Records from 2010-09-05:
7: MDataTable: Correction ToDataTable Method
Records from 2010-09-06:
8: MAction: added support for GetFrom and SetTo in Winform
9: MActionUI: new classes are separated from MAction.
Records from 2010-09-07:
Records from 2010-09-08:
10: MDataTable: supports binding the Winform DataGridView control.
PS: V1.5.5, which includes some functions for modifying SQL2000 in V2.0.
V2.0 is a large version that supports multiple databases.
Records from 2010-09-09:
1: added support for Access databases.
Records from:
2: SQLString: FormatWhere is not formatted to lowercase
3: Maction: optimizes the code for accessing database operations
4: OutPutData: re-adjust the internal code, add Access support, and remove the output enumeration description.
5: The auxiliary tool V1.6 was born to support the generation of Access enumeration.
Records from:
6: DbBase: the return value of a stored procedure cannot be a name index or a digital index.
7: MDataColumn: add and delete columns.
8: MDataTable: Modify the constructor
Records from:
9: OutPutData database 2000 output shielding system-provided [tables/views/stored procedures]
Records from:
10: Add parameters for SQL2000 parameter execution.
11: SQL2000 paging Stored Procedure correction.
12: corrected the use of transactions in SQL2000.
Records from:
13: added Aop to separate permissions, operation logs, exceptions, and other independent processes.
Records from:
14: MDataTable fixed index unreset errors when multiple bindings
Records from:
15: The Dynamic Loading Function is added to Aop. The configuration file is required: <add key = "Aop" value = "assembly name, namespace. Aop class name"/>
Records from 2010-09-27:
16: added support for Oracle, and added and deleted updates.
Records from:
17: Compile the paging stored procedure and call it. You can also use the enumeration export function to create a log table.
Records from:
18: Create a log table.
19: auxiliary tools are implemented.
Records from:
20: Bind method added to MDataTable
21: added ToJson output for MDataTable
22: added the JsonHelper class.
Records from:
1: add the Bind method to MAction.
2: corrected the MAction Debug attribute [Close is automatically called upon failure, and DbBase error information cannot be obtained for the attribute]
3: added the IDisponse interface implementation for MProc.
Records from:
4: MAction: Aop modifies Fill to return the id value
Records from:
5: MProc ResetProc re-determine whether the stored procedure is stored
: CYQBlog
Data framework CYQ. Data download center: Http://www.cyqdata.com/download/article-detail-426