背景信息:
我正在使用Microsoft Visual Web Developer 2010 Express.
关于我(缺乏)经验的信息:我正在尝试解决的第一个教程中出现的问题.
一些额外的信息:
问题描述:
我正在尝试完全遵循"介绍到ASP.NET MVC 3"教程中的步骤,并且我在第5部分的第一步遇到问题- 添加MoviesController:
当我尝试使用教程中显示的确切设置添加"MoviesController"并单击"添加"时,我收到以下错误:
"无法检索元数据MvcMovie.Models.Movie.无法找到所请求的.NET Framework数据提供.它可能没有安装."
Google在搜索"无法找到所请求的.Net Framework数据提供程序"这一短语时给出了大量结果,但到目前为止还没有解决问题.
我尝试过的:
我认为SQL-Server没有安装,所以我从Visual-Studio Express ISO安装了一个错误然后我从ISO运行修复它声称所有15点包括SQL Server Express修复和.NET 4 Framework成功地完成了.
我已经运行了The_.NET_Framework_Setup_Verification_Tool,它成功完成了所有事情. http://blogs.msdn.com/b/astebner/archive/2008/10/13/8999004.aspx
在提到(重新)安装和修复之后,我重新创建了项目,并按照教程中的描述执行了每个步骤并得到了相同的错误.
我发现我应该在machine.config中查找DbProviderFactories,
项目的root-Web.config具有以下条目
<connectionStrings>
<add name="MovieDBContext"
connectionString="Data Source=|DataDirectory|Movies.sdf"
providerName="System.Data.SqlServerCe.4.0"/>
Run Code Online (Sandbox Code Playgroud)
我的机器配置文件只有一个DbProviderFactories条目:
<DbProviderFactories>
<add name="Microsoft SQL Server Compact Data Provider" invariant="System.Data.SqlServerCe.3.5" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=3.5.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/></DbProviderFactories>
Run Code Online (Sandbox Code Playgroud)
然后我发现了以下引用
"我们改变了DbProviderFactories.GetFactoryClasses()确定VS2010中框架提供程序的方式.它们不再列在machine.config文件中."
题:
所以也许这是错误的方向,因为我不知道下一步该尝试什么,我应该采取什么步骤来调查和解决这个问题? …
c# sql-server visual-web-developer dataprovider asp.net-mvc-3
我正在关注ASP.NET MVC 3音乐商店应用程序教程,但我一直陷入第4部分:http://www.asp.net/mvc/tutorials/mvc-music-store-part-4.它一直告诉我我没有安装SQL数据提供程序:
确切的错误:
System.ArgumentException was unhandled by user code
Message=Unable to find the requested .Net Framework Data Provider. It may not be installed.
Source=System.Data
StackTrace:
at System.Data.Common.DbProviderFactories.GetFactory(String providerInvariantName)
at System.Data.Entity.Internal.LazyInternalConnection.TryInitializeFromAppConfig(String name)
at System.Data.Entity.Internal.LazyInternalConnection.Initialize()
at System.Data.Entity.Internal.LazyInternalConnection.get_ConnectionHasModel()
at System.Data.Entity.Internal.LazyInternalContext.InitializeContext()
at System.Data.Entity.Internal.InternalContext.Initialize()
at System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType(Type entityType)
at System.Data.Entity.Internal.Linq.InternalSet`1.Initialize()
at System.Data.Entity.Internal.Linq.InternalSet`1.GetEnumerator()
at System.Data.Entity.Infrastructure.DbQuery`1.System.Collections.Generic.IEnumerable<TResult>.GetEnumerator()
at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
at MusicApplication.Controllers.StoreController.Index() in C:\Users\Michelle\documents\visual studio 2010\Projects\MusicApplication\MusicApplication\Controllers\StoreController.cs:line 18
at lambda_method(Closure , ControllerBase , Object[] )
at System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters)
at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext …Run Code Online (Sandbox Code Playgroud) 如何在不使用Entity Framework进行安装的情况下部署和配置ODP.NET?
A.如何部署和配置Oracle.DataAccess.Client?
B.如何部署和配置Oracle.ManagedDataAccess.Client?
C.为了使用Oracle SSDL的EDMX进行构建,您需要做什么?
D.您需要为设计师支持安装什么?
我正在使用TestNG for Eclipse.
我的问题是,如果可能的话,一步一步地给两个数据提供者提供相同的测试功能?我可以将两个提供商合二为一,但这不是我想要的.我需要(不像在这个例子中)独立生成数据.
@DataProvider(name = "dataSet1")
public Object[][] createDataX() {
return new Object[][] { { 1, 1 }, { 2, 2 } };
}
@DataProvider(name = "dataSet2")
public Object[][] createDataY() {
return new Object[][] { { 0, 0 }, { 3, 3 } };
}
Run Code Online (Sandbox Code Playgroud)
我想让BOTH提供商进行同样的测试.这可能吗?
@Test(dataProvider = "dataSet1") // ??? and "dataSet2" ???
public void testThisFunction(int val1, int val2) {
boolean solution = oracle(val1,val2);
assert (solution);
}
Run Code Online (Sandbox Code Playgroud) 我正在使用VS 2013来开发Win 8.1应用程序.我选择处理SQLite,但是当我尝试添加新连接来管理我的数据库时,我找不到数据提供程序.
任何帮助表示赞赏
我有以下测试用例:
include_once('../Logger.php');
class LoggerTest extends PHPUnit_Framework_TestCase {
public function providerLogger() {
return new Logger;
}
/**
* @dataProvider providerLogger
*/
public function testAddStream($logger) {
$this->assertTrue(false);
}
}
Run Code Online (Sandbox Code Playgroud)
当我在PHPUnit中运行它时,我得到:
PHPUnit 3.4.14 by Sebastian Bergmann.
..........
Time: 0 seconds, Memory: 5.75Mb
OK (1 tests, 0 assertions)
Run Code Online (Sandbox Code Playgroud)
测试应该失败,但事实并非如此.我试过:
public function providerLogger() {
return array(new Logger);
}
Run Code Online (Sandbox Code Playgroud)
但我得到:
The data provider specified for LoggerTest::testAddStream is invalid.
Run Code Online (Sandbox Code Playgroud)
我试着宣布它static(就像手册所说的那样),但仍然没有区别.
我记得以前以类似的方式工作,但我可能是错的.我错过了什么?
在此先感谢您的帮助.
PHP 5.3.3上的PHPUnit 3.4.14(取自PEAR)
我正在使用VS2010和MySQL .NET Connector.我以前工作的项目开始报告:
错误175:找不到指定的数据存储提供程序,或者无效.
我不知道为什么,虽然在MS建议修改VS之后事情变得奇怪了.
果然,如果我去测试ADO.NET实体数据模型添加到项目中,实体数据模型向导生成.edmx文件不显示数据提供者时,我选择"从数据库生成".更糟糕的是,右键单击并尝试在现有的.edmx文件上执行"从数据库更新模型..."会将VS2010发送到死亡螺旋形的对话框中,这些对话框只能通过任务管理器终止.
以下是我修复它的方法:关闭VS2010.完全卸载MySQL Connector.重启.完全安装MySQL连接器.重启.重启VS2010.
突然间,我的数据提供者存在.我可以编译我的代码.以及添加测试.edmx文件.向导会看到我的MySQL数据库,传递测试连接,并使用我的关系表构建对象模型.我可以尽可能多地清理/重建.
一切都很好,直到我运行应用程序.我的"修复"不坚持.
此时抛出异常,声明连接对象返回null,如果我重新编译而没有更改代码,则会再次出现Error 175错误.泡沫,冲洗,重复.
基于此StackOverflow答案的一些实验显示连接字符串有效,并且使用MySqlConnection对象,我可以访问数据库并在此状态下滚动我自己的工作查询.
问题似乎是数据存储提供商以某种方式迷失或踩到了,这正在影响通过EntityFrameworks执行操作的能力.
我正在寻找一些关于在哪里寻找这些存储的建议,如果有人遇到类似的东西,如果有任何有用的建议或想法,你认为我可能会尝试.
更新 - 虽然这个花絮没有解决我的问题,但它确实使VS2010更稳定:卸载.NET Connector后,我立即检查了控制面板的安装程序,发现还安装了较旧的.NET Connector.我从控制面板上卸下了一个,重新启动,然后安装了新的.VS2010现在记住了使用EntityFrameworks的数据库提供程序.显然我安装了一个更新的MySQL连接器,认为它会卸载旧的连接器,而不是互相遍历.
现在我得到一个System.ArgumentException内部System.Data.Entity.dll陈述略有不同的消息:
在配置中找不到指定的商店提供商,或者无效.System.ArgumentException:无法找到请求的.Net Framework数据提供程序.它可能没有安装.
这种情况发生在该System.Data.Common.DbProviderFactories.GetFactory(String providerInvariantName)方法中.
修订注 - 上述罢工的原因是VS2010最终确实再次失去了设置.但我能够从控制面板卸载.Net连接器并重新安装连接器,无需重新启动,并在环境中重新启动数据提供程序.问题的这一部分更像是VS2010错误,而不是.NET Connector问题.
假设我的模型User与自身有多对多的关系,命名为friends.所以$user->friends(或$model->friends在视图中)给我一个User对象数组.我想将朋友显示为gridview.但CGridView数据作为dataProvider对象.谷歌搜索找到了将模型对象数组转换为dataProvider对象的方法,如下所示.
$this->widget('zii.widgets.grid.CGridView', array(
'id' => 'gridUser',
'dataProvider' => new CArrayDataProvider($model->friends, array()),
));
Run Code Online (Sandbox Code Playgroud)
现在使用这个我得到一个错误
属性"User.id"未定义.
UPDATE
public function relations()
{
return array(
'friends' => array(self::MANY_MANY, 'User', 'friendship(user_id, friend_id)'),
);
}
Run Code Online (Sandbox Code Playgroud) 我有一个测试从数据提供者接收数据.我希望此测试与数据提供程序中的不同值并行运行.
我尝试了一种方法:
public class IndependentTest
{
@Test(dataProvider = "dp1" ,threadPoolSize=3,invocationCount=1)
public void testMethod(int number)
{
Long id = Thread.currentThread().getId();
System.out.println("HELLO : " + id);
}
@DataProvider(name = "dp1",parallel=true)
public Object[][] dp1() {
return new Object[][] {
new Object[] { 1 },
new Object[] { 2 },
new Object[] { 3 },
new Object[] { 4 },
new Object[] { 5 },
new Object[] { 6 },
new Object[] { 7 },
new Object[] { 8 }
};
}
Run Code Online (Sandbox Code Playgroud)
}
我收到的输出是: …
在我的PostSearch模型中,我有这个代码:
public function search($params)
{
$query = Post::find()->where(['status' => 1]);
$dataProvider = new ActiveDataProvider([
'query' => $query,
'sort'=> ['defaultOrder' => ['id' => SORT_DESC]],
'pagination' => [
'pageSize' => 10,
]
]);
if (!($this->load($params) && $this->validate())) {
return $dataProvider;
}
$query->andFilterWhere([
'id' => $this->id,
'status' => $this->status,
]);
$query->andFilterWhere(['like', 'title', $this->title])
->andFilterWhere(['like', 'text', $this->text]);
return $dataProvider;
Run Code Online (Sandbox Code Playgroud)
我的尝试,而不是上面的行return $dataProvider,将是这段代码:
$dependency = [
'class' => 'yii\caching\DbDependency',
'sql' => 'SELECT MAX(updated_at) FROM post',
];
$result = self::getDb()->cache(function ($db) {
return $dataProvider;
}, …Run Code Online (Sandbox Code Playgroud) dataprovider ×10
php ×3
java ×2
sql-server ×2
testng ×2
.net ×1
app-config ×1
asp.net-mvc ×1
c# ×1
caching ×1
model ×1
mysql ×1
odp.net ×1
oracle ×1
phpunit ×1
sqlite ×1
testing ×1
unit-testing ×1
yii ×1
yii2 ×1