11C# driver changes from 1.5 to 1.6
22
3+ IndexOptionsBuilder.cs
4+ added SetTimeToLive
5+
36QueryBuilder.cs
47QueryBuilderTyped.cs
58 Mod arguments changed from int to long
@@ -8,13 +11,21 @@ AggregateResult.cs
811 new class
912 represents the result of an aggregate command
1013
14+ CollectionStatsResults.cs
15+ added CollectionSystemFlags and CollectionUserFlags enums
16+ marked Flags property obsolete
17+ added SystemFlags and UserFlags properties
18+
1119IsMasterResult.cs
1220 new class
1321 represents the result of an IsMaster command
1422
1523ConnectWaitFor.cs
1624 enum removed (obsoleted by ReadPreference)
1725
26+ GetIndexesResult.cs
27+ added TimeToLive property to IndexInfo class
28+
1829MongoCollection.cs
1930 added Aggregate helper method
2031 obsoleted slaveOk
@@ -56,6 +67,8 @@ MongoServer.cs
5667 instance management logic moved from this class to new proxy classes
5768 static constructor no longer registers serializers (see MongoDBRef and SystemProfileInfo)
5869 removed ConnectWaitFor overload to Connect
70+ obsoleted slaveOk
71+ added support for ReadPreference
5972
6073MongoServerBuildInfo.cs
6174 added new FromCommandResult helper factory method
@@ -65,11 +78,14 @@ MongoServerInstance.cs
6578 added tracking of a running average Ping time
6679 moved state verification time here from MongoConnectionPool
6780 added several new internal properties (AveragePingTime, ReplicaSetInformation, InstanceType)
68- changed most thread synchronization to use Interlocked methods rather than locks
81+ reengineered how locking is used
82+ changed some thread synchronization to use Interlocked methods rather than locks
83+ IsMasterResult now returns an instance of the new IsMasterResult class
6984 reimplemented VerifyState
70- reimplemented Connect
85+ reimplemented Connect and Disconnect
7186 renamed internal VerifyState helper method to LookupServerInformation (and reimplemented it)
7287 added internal Ping helper method that keeps running average of Ping time
88+ added new ServerInformation helper class
7389
7490MongoServerSettings.cs
7591 obsoleted slaveOk
@@ -136,46 +152,60 @@ DiscoveringMongoServerProxy.cs
136152 new class that is used when we won't know what kind of server we are connected to until we try to connect to it
137153
138154IMongoServerProxy.cs
139- interface for proxies
155+ interface for server proxies
140156
141157MongoConnection.cs
142158 added support for SSL
159+ changed RunCommand to take a database name instead of a collection name
143160
144161MongoConnectionPool.cs
145162 moved state verification timer to MongoServerInstance
163+ new MaintainPoolSize method is a refactoring of the old TimerCallback method
146164 RemoveConnection is now private
147165
148166MongoServerProxyFactory.cs
149167 new class to handle choosing the type of IMongoServerProxy to create based on settings
150168
151- MultipleConnectionMongoServerProxy .cs
169+ MultipleInstanceMongoServerProxy .cs
152170 new abstract class for managing multiple active MongoServerInstances
153171
154172PingTimeAggregator.cs
155173 new class to keep track of ping times and their average for a MongoServerInstance
156174
157175ReplicaSetConnector.cs
158176 removed class
159- more or less replaced by MultipleConnectionMongoServerProxy and ReplicaSetMongoServerProxy
177+ more or less replaced by MultipleInstanceMongoServerProxy and ReplicaSetMongoServerProxy
160178
161179ReplicaSetInformation.cs
162180 new class to hold information about a replica set
163181
164182ReplicaSetMongoServerProxy.cs
165- new subclass of MultipleConnectionMongoServerProxy to implement replica set specifics
183+ new subclass of MultipleInstanceMongoServerProxy to implement replica set specifics
166184
167185ShardedMongoServerProxy.cs
168- new sublcass of MultipleConnectionMongoServerProxy to implement mongos specifics
186+ new sublcass of MultipleInstanceMongoServerProxy to implement mongos specifics
169187
170- MongoQueryProvider.cs
171- fixed a bug related to First, FirstOrDefault, Single and SingleOrDefault when projecting a primitive type
188+ ExpressionNormalizer.cs
189+ normalize comparisons of Nullable<T> from VB to C#
190+ VisitUnary now calls base method before normalizing
172191
173192PredicateTranslator.cs
174- changed Mod operation to use a 64-bit integer
193+ changed Mod query operator to support either 32-bit or 64-bit integers
194+
195+ Projector.cs
196+ added new IProjector and IProjector<TSource, TResult> interfaces
197+ added new IdentityProjector<T> class
198+ Projector<TSource, TResult> now implements IProjector<TSource, TResult> interface
199+ added Cursor property to Projector
175200
176201SelectQuery.cs
177202 changed skip and take handling to be order dependent
178203 Distinct now must appear last in the query pipeline
204+ changed Execute so that a projector is always used, even if it is only an IdentityProjector
179205
180206BsonSerializationInfoHelper.cs
181- moved code to the BsonSerializationInfo class
207+ moved SerializeValue and SerializeValues to the BsonSerializationInfo class
208+ but left behind forwarding stubs (for now)
209+
210+ MongoQueryProvider.cs
211+ fixed a bug related to First, FirstOrDefault, Single and SingleOrDefault when projecting a primitive type
0 commit comments