我已经尝试过使用以下代码:

$mongoDbDriverPath = '
 C:\Mongodb\net45\'
$mongoServer = 'localhost:27017'

Add-Type -Path "$($mongoDbDriverPath)MongoDB.Bson.dll"
Add-Type -Path "$($mongoDbDriverPath)MongoDB.Driver.dll"
$databaseName = "test"
$collectionName = "sample"
$client = New-Object -TypeName MongoDB.Driver.MongoClient -ArgumentList "mongodb://localhost:27017"
$server = $client.GetServer()
$database = $server.GetDatabase($databaseName)
$collection = $database.GetCollection($collectionName)
Write-Host $server,$database,$collection
$query = [MongoDB.Driver.Builders.Query]::EQ("Name", "sample")

$results = $collection.Find($query)
$results

但它显示了一些错误:



我如何克服这个错误?

最佳答案

我知道我有点晚了,但最近几天我一直在玩 Mongodb 和 Powershell。我发现的最简单的解决方案是从 Powershell 库安装 MongoDB cmdlet:

https://github.com/nightroman/Mdbc

第 1 步:获取并安装。

Mdbc 作为 PowerShell Gallery 模块 Mdbc 分发。在
PowerShell 5.0 或 PowerShellGet 你可以通过这个安装它
命令:

Install-Module Mdbc

第 2 步:在 PowerShell 命令提示符中导入模块:
Import-Module Mdbc

第 3 步:查看帮助:
help about_Mdbc
help Connect-Mdbc -full

然后通过以下步骤查看设置是否正常工作:
# Load the module
Import-Module Mdbc

# Connect the new collection test.test
Connect-Mdbc . test test -NewCollection

# Add some test data
@{_id=1; value=42}, @{_id=2; value=3.14} | Add-MdbcData

# Get all data as custom objects and show them in a table
Get-MdbcData -As PS | Format-Table -AutoSize | Out-String

# Query a document by _id using a query expression
$data = Get-MdbcData (New-MdbcQuery _id -EQ 1)
$data

# Update the document, set the 'value' to 100
$data._id | Update-MdbcData (New-MdbcUpdate -Set @{value = 100})

# Query the document using a simple _id query
Get-MdbcData $data._id

# Remove the document
$data._id | Remove-MdbcData

# Count remaining documents, 1 is expected
Get-MdbcData -Count

关于mongodb - 如何使用 PowerShell 连接 MongoDB?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45010964/

10-16 19:58