我尝试连接到服务器并获取数据库.它运行正常,但它VS2013给我一个警告:
警告1'MongoDB.Driver.MongoClientExtensions.GetServer(MongoDB.Driver.MongoClient)'已废弃:'请改用新API.
string connectionString = "mongodb://localhost:27017";
MongoClientSettings settings = MongoClientSettings.FromUrl(new MongoUrl(connectionString));
MongoClient mongoClient = new MongoClient(settings);
var server = mongoClient.GetServer();
var db = server.GetDatabase("bookstore");
var bookCollection = db.GetCollection<Book>("Book");
Run Code Online (Sandbox Code Playgroud)
有人可以帮我解决这个问题吗?Tks阅读.
在旧的 .Net API 版本中:
MongoClient client = new MongoClient();
var server = client.GetServer();
var db = server.GetDatabase("foo");
var collection = db.GetCollection<BsonDocument>("bar");
var document = new BsonDocument { { "_id", 1 }, { "x", 2 } };
collection.Save(document);
Run Code Online (Sandbox Code Playgroud)
有效。
当我使用新的 .Net 驱动程序 2.0 时:
var client = new MongoClient("mongodb://localhost:27017");
var database = client.GetDatabase("foo");
var collection = database.GetCollection<BsonDocument>("bar");
var document = new BsonDocument { { "_id", 1 }, { "x", 2 } };
await collection.InsertOneAsync(document);
Run Code Online (Sandbox Code Playgroud)
错误:“await”运算符只能在异步方法中使用。考虑使用“async”修饰符标记此方法并将其返回类型更改为“Task”。
参考文献:
我想问如何使用.Net …
我尝试将值从C#保存到MongoDB的日期时间值:
DateTime.ParseExact("10/02/2015", "dd/MM/yyyy", CultureInfo.InvariantCulture)
Run Code Online (Sandbox Code Playgroud)
但在MongoDB中出现:
ISODate("2015-02-09T17:00:00.000Z")
Run Code Online (Sandbox Code Playgroud)
我不知道为什么MongoDB的结果晚于一天(日期:9),而我的日期是10.感谢您阅读我的问题
更新1:作为#mnemosyn的回答我做了一些改变:
DateTime.SpecifyKind((DateTime.ParseExact("20/07/2015", "dd/MM/yyyy", CultureInfo.InvariantCulture)), DateTimeKind.Utc)
Run Code Online (Sandbox Code Playgroud)
结果: ISODate("2015-07-20T00:00:00.000Z")
我在Windows上下载Redis 2.8.19,它运行正常.但在我重新启动计算机后,我尝试打开它并显示错误:

[] 5880] 15月15日:42:12.227 #Windows版本的Redis分配一个大内存映射文件,用于与持久性操作中使用的分叉进程共享堆.此文件将在当前工作目录中创建,或者由.conf文件中的'heapdir'指令指定的目录创建.Windows报告此文件没有足够的可用磁盘空间(Windows错误0x70).
您可以通过使用--maxheap标志减小Redis堆的大小,或者将堆文件移动到具有足够空间的本地驱动器来解决此问题.有关--maxheap和--heapdir标志的更多详细信息,请参阅二进制发行版附带的文档.
Redis无法继续.退出.
我找不到堆文件,也不知道如何减小Redis堆的大小.谢谢 !
我正在尝试构建一个项目以使用 Spring Data 连接到 MongoDB,如下所示: SpringMongoConfig.java
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.mongodb.MongoDbFactory;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.SimpleMongoDbFactory;
import com.mongodb.MongoClient;
@Configuration
public class SpringMongoConfig {
@Bean
public MongoDbFactory mongoDbFactory() throws Exception {
return new SimpleMongoDbFactory(new MongoClient("127.0.0.1"), "ReconInput");
}
@Bean
public MongoTemplate mongoTemplate() throws Exception {
MongoTemplate mongoTemplate = new MongoTemplate(mongoDbFactory());
return mongoTemplate;
}
}
Run Code Online (Sandbox Code Playgroud)
ReconInputRepository.java:
@Repository
public interface ReconInputRepository extends MongoRepository<ReconInput, String> {
public List<ReconInput> findByReportingDate(String reportingDate);
}
Run Code Online (Sandbox Code Playgroud)
ReconInputService.java
public interface ReconInputService {
public List<ReconInput> getInputByReportingDate(String reportingDate);
}
Run Code Online (Sandbox Code Playgroud)
ReconInputServiceImpl.java
@Service
public …Run Code Online (Sandbox Code Playgroud) 我有一个使用连接池的 Spring 启动项目。它在我的电脑上正常工作,但是当我的同事从 git 中提取代码然后尝试运行时。它抛出了如下错误:
2018-02-28 14:49:24.527 WARN 11856 --- [ost-startStop-1] o.a.tomcat.util.scan.StandardJarScanner : Failed to scan [file:/C:/Users/ABC/.m2/repository/com/mchange/c3p0/0.9.5.2/mchange-commons-java-0.2.11.jar] from classloader hierarchy
java.io.FileNotFoundException: C:\Users\ABC\.m2\repository\com\mchange\c3p0\0.9.5.2\mchange-commons-java-0.2.11.jar (The system cannot find the file specified)
at java.util.zip.ZipFile.open(Native Method) ~[na:1.8.0_60]
at java.util.zip.ZipFile.<init>(ZipFile.java:219) ~[na:1.8.0_60]
at java.util.zip.ZipFile.<init>(ZipFile.java:149) ~[na:1.8.0_60]
at java.util.jar.JarFile.<init>(JarFile.java:166) ~[na:1.8.0_60]
at java.util.jar.JarFile.<init>(JarFile.java:130) ~[na:1.8.0_60]
at org.apache.tomcat.util.scan.JarFileUrlJar.<init>(JarFileUrlJar.java:60) ~[tomcat-embed-core-8.5.23.jar:8.5.23]
at org.apache.tomcat.util.scan.JarFactory.newInstance(JarFactory.java:49) ~[tomcat-embed-core-8.5.23.jar:8.5.23]
at org.apache.tomcat.util.scan.StandardJarScanner.process(StandardJarScanner.java:338) ~[tomcat-embed-core-8.5.23.jar:8.5.23]
at org.apache.tomcat.util.scan.StandardJarScanner.scan(StandardJarScanner.java:288) ~[tomcat-embed-core-8.5.23.jar:8.5.23]
at org.apache.jasper.servlet.TldScanner.scanJars(TldScanner.java:262) [tomcat-embed-jasper-8.5.23.jar:8.5.23]
at org.apache.jasper.servlet.TldScanner.scan(TldScanner.java:104) [tomcat-embed-jasper-8.5.23.jar:8.5.23]
at org.apache.jasper.servlet.JasperInitializer.onStartup(JasperInitializer.java:101) [tomcat-embed-jasper-8.5.23.jar:8.5.23]
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5196) [tomcat-embed-core-8.5.23.jar:8.5.23]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) [tomcat-embed-core-8.5.23.jar:8.5.23]
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1419) [tomcat-embed-core-8.5.23.jar:8.5.23]
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1409) [tomcat-embed-core-8.5.23.jar:8.5.23]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) …Run Code Online (Sandbox Code Playgroud)