我刚创建了一个节点项目,并尝试使用bower安装jquery.
bower install jquery
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
bower jquery#* not-cached git://github.com/jquery/jquery.git#*
bower jquery#* resolve git://github.com/jquery/jquery.git#*
bower jquery#* error Arguments to path.join must be strings
Stack trace:
TypeError: Arguments to path.join must be strings
at f (path.js:204:15)
at Object.filter (native)
at Object.exports.join (path.js:209:40)
at GitHubResolver._checkout (C:\Users\Adam\AppData\Roaming\npm\node_modules\bower\lib\core\resolvers\GitHubResolver.js:54:21)
at C:\Users\Adam\AppData\Roaming\npm\node_modules\bower\lib\core\resolvers\GitResolver.js:69:21
at _fulfilled (C:\Users\Adam\AppData\Roaming\npm\node_modules\bower\node_modules\p-throttler\node_modules\q\q.js:798:54)
at self.promiseDispatch.done (C:\Users\Adam\AppData\Roaming\npm\node_modules\bower\node_modules\p-throttler\node_modules\q\q.js:827:30)
at Promise.promise.promiseDispatch (C:\Users\Adam\AppData\Roaming\npm\node_modules\bower\node_modules\p-throttler\node_modules\q\q.js:760:13)
at C:\Users\Adam\AppData\Roaming\npm\node_modules\bower\node_modules\p-throttler\node_modules\q\q.js:574:44
at flush (C:\Users\Adam\AppData\Roaming\npm\node_modules\bower\node_modules\p-throttler\node_modules\q\q.js:108:17)
Console trace:
Trace
at StandardRenderer.error (C:\Users\Adam\AppData\Roaming\npm\node_modules\bower\lib\renderers\StandardRenderer.js:72:17)
at Logger.<anonymous> (C:\Users\Adam\AppData\Roaming\npm\node_modules\bower\bin\bower:111:22)
at Logger.emit (events.js:95:17)
at Logger.emit (C:\Users\Adam\AppData\Roaming\npm\node_modules\bower\node_modules\bower-logger\lib\Logger.js:29:39)
at C:\Users\Adam\AppData\Roaming\npm\node_modules\bower\lib\commands\index.js:40:20
at _rejected (C:\Users\Adam\AppData\Roaming\npm\node_modules\bower\node_modules\q\q.js:797:24)
at …Run Code Online (Sandbox Code Playgroud) 我不是数据库人,但我正在尝试清理另一个数据库.所以我的问题是,将性别表正常化会走得太远吗?
User table:
userid int pk,
genderid char(1) fk
etc...
gender table:
genderid char(1) pk,
gender varchar(20)
Run Code Online (Sandbox Code Playgroud)
现在起初它对我来说似乎很愚蠢,但后来我考虑了它,因为我可以有一个恒定的数据源来填充或绑定.我将使用WPF.如果它是另一个框架我可能会避免它,但你怎么看?
我有一个主数据网格,然后是一个手风琴控件.在其中一个手风琴项目中,我有另一个数据网格,它绑定到第一个数据网格的选定项目.简单的xaml是:
<sdk:DataGrid Name="dgMain" ItemsSource="{Binding SomeSource}" />
<toolkit:Accordion>
<toolkit:AccordionItem Header="Details">
<sdk:DataGrid ItemsSource="{Binding ElementName=dgMain, Path=SelectedItem.Children}"/>
</toolkit:AccordionItem>
</toolkit:Accordion>
Run Code Online (Sandbox Code Playgroud)
我将第二个网格的VerticalAlignment属性设置为"Stretch",因此当它绑定到不同的集合大小时它会伸展,但问题是它只在AccordionItem大小内延伸,所以如果我在第一个网格中选择一个有更多的新项目"孩子们"然后我必须滚动第二个网格,因为AccordionItem没有改变.
AccordionItem区域仅在我压缩并再次展开时才会改变.将VerticalContentAlignment设置为"Stretch"为accordion项不起作用.我猜是因为它只会在第一次扩展时触发它.
有谁知道我还能尝试什么,或者我错过了什么.我更喜欢坚持使用xaml解决方案,因此我可以保持MVVM友好,但很高兴听到一切.
我有一个DataGrid和一个Expander,如下所示:
<StackPanel>
<my:DataGrid Name="dataGrid1" AutoGenerateColumns="False" ItemsSource="{Binding}">...</my:DataGrid>
<Expander Header="{Binding ElementName=dataGrid1, Path=SelectedItem.Name, StringFormat=Details of {0}}">...</Expander>
</StackPanel>
Run Code Online (Sandbox Code Playgroud)
绑定很好,但由于某种原因,字符串格式不起作用.它始终只显示值dataGrid1.SelectedItem.Name我也尝试过:
StringFormat=Details of \{0\}
Run Code Online (Sandbox Code Playgroud)
这不起作用.
我甚至尝试将Expander的HeaderStringFormat属性设置为"{0}的细节",但这也没有格式化它.
我能够让这个解决方法工作:
<Expander>
<Expander.Header>
<TextBox Text="{Binding ElementName=dataGrid1, Path=SelectedItem.Name, StringFormat=Details of {0}}"></TextBox>
</Expander.Header>
</Expander>
Run Code Online (Sandbox Code Playgroud)
有谁知道为什么StringFormat不适用于Header属性?
我正在使用带有Web服务的实体框架,并且我有由Web服务自动生成的实体部分类对象.
我想扩展这些类,但我想以类似于命名空间的方式(在类中除外)的方式将它们分组在生成的类中.
这是我生成的类:
public partial class Employee : Entity
{
public int ID { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我想添加一些新的属性,功能等类似于:
public partial class Employee : Entity
{
public string FullName {
get { return this.FirstName + " " + this.LastName; }
}
}
Run Code Online (Sandbox Code Playgroud)
但是,我想将任何其他属性组合在一起,这样我与生成的方法有一些更明显的分离.我想能够打电话给:
myEmployee.CustomMethods.FullName
Run Code Online (Sandbox Code Playgroud)
我可以在名为CustomMethods的分部类中创建另一个类,并将引用传递给基类,以便我可以访问生成的属性.或者也许只是以特定方式命名它们.但是,我不确定什么是最好的解决方案.我正在寻找干净且属于良好实践的社区理念.谢谢.
我在一个silverlight应用程序中使用prism框架,在单独的XAP中有多个模块.
我在我的shell项目中定义了一个资源字典.在我的模块中,我可以很好地使用资源,但由于模块与shell分离,直到它们在运行时加载,设计器不会显示它们或识别它们.
有没有办法让模块在设计时知道我的资源而不在每个视图xaml中合并我的资源文件?
我的资源文件位于"常见"项目中.
现在我有一些服务在一个不依赖于IoC容器的程序集中定义(在我的例子中为Ninject).在主项目中,我有一个用于在容器中注册的数据访问的IRepository.
this.Bind<IRepository>().To<EntityFrameworkRepository<MyDatabaseEntities>>();
Run Code Online (Sandbox Code Playgroud)
我还注册了IAuthenticationService和IErrorLogger服务,其具体实现我想将存储库用于其逻辑.但是,我不确定如何最好地完成这一任务.目前,我在两个具体实现上的构造函数都接受一个IRepository参数,并在我注册它时将其传递给它:
this.Bind<IAuthenticationService>().To<MyAuthenticationService>().
WithConstructorArgument("myRepository", ctx => ctx.Kernel.Get<IRepository());
Run Code Online (Sandbox Code Playgroud)
在这里,我只是告诉容器抓取IRepository实例并将其传递给构造函数.
我觉得让我的服务组件依赖于ninject甚至是公共服务定位器(CSL)是不对的,但我也不确定我当前的方式.我正在寻找意见和替代解决方案.
如果我的其他服务不使用IRepository,我将不得不为每种类型的底层IRepository类型创建这些服务的新具体实现(例如,伪造和真实数据的AuthenticationService).这将是很多逻辑重复.
c# asp.net-mvc dependency-injection ninject inversion-of-control
我最初设置的EF代码是连接到现有数据库的.这工作正常.
然后我对POCO进行了一些更改,并决定让代码首先为我生成新数据库.
获取错误:无法打开登录请求的数据库\"MyDatabase \".登录失败.\ r \n登录用户'DOMAIN\username'失败.
我删除了旧数据库,但我没有更改连接字符串:
<add name="MyDatabaseContext" connectionString="Data Source=localhost;Initial Catalog=MyDatabase;Integrated Security=True;" providerName="System.Data.SqlClient" />
Run Code Online (Sandbox Code Playgroud)
我的本地计算机上有一个sql server 2008实例,我的域用户名是"sysadmin"角色.
我尝试了各种数据库初始化程序,我得到了同样的错误.它在第一次查询调用时失败,但代码首先不创建数据库.我可以将连接字符串指向旧数据库的副本(在更改之前)并且它将正常运行,除非它是我的旧模式,即使我指定了DropCreateDatabaseAlways初始化程序.这没有意义,也没有遵循我在家用机器上使用代码的经验.
使用Visual Studio 2012和EF5.
我需要能够让代码首先生成一个新的数据库.到底是怎么回事?
我有一个数据库,我想保留在主域,但阻止域管理员写入它.读访问不是问题.为此,看起来我必须确保任何具有写入权限的帐户仅使用SQL登录(因为域管理员可以重置任何其他域帐户的密码).我确实意识到这有其他安全隐患.另一个问题是Windows服务器上的管理员获取数据库mdf文件并将其附加到另一个实例并修改数据库内容,然后替换原始服务器上的mdf.我首先想知道这是否可能,还是需要通过sql server重新连接?
由于服务器仍在域中,因此域管理员显然是服务器上的管理员.是否还有其他方法可以获得我应该担心的数据库写访问权限(例如删除master数据库mdf)?
database sql-server security database-security windows-server-2008
我有一个风格的列表框.列表框项目在悬停时和选中时会更改颜色.悬停并选择正常工作.但是当选择一个项目然后将鼠标移开然后将其悬停在它上面会导致它返回到悬停/未选定状态,即使它仍处于选中状态.如何将listboxitem保持在"选定"的可视状态?
<Style x:Name="myListBoxItemStyle" TargetType="ListBoxItem">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListBoxItem">
<Border x:Name="myBorder" CornerRadius="5" BorderThickness="3" Background="#FF292121" Margin="0">
<Grid HorizontalAlignment="Stretch">
<ContentPresenter Content="{TemplateBinding Content}" Margin="5,0,5,0" />
</Grid>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal"/>
<VisualState x:Name="MouseOver">
<Storyboard>
<ColorAnimation Storyboard.TargetName="myBorder" Storyboard.TargetProperty="(Background).(SolidBrush.Color)" Duration="00:00:00.2" To="#FF949290" />
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled"/>
</VisualStateGroup>
<VisualStateGroup x:Name="SelectionStates">
<VisualState x:Name="Unselected" />
<VisualState x:Name="Selected">
<Storyboard>
<ColorAnimation Storyboard.TargetName="myBorder" Storyboard.TargetProperty="(Background).(SolidBrush.Color)" Duration="00:00:00.2" To="#FF949290" />
</Storyboard>
</VisualState>
<VisualState x:Name="SelectedUnfocused"/>
</VisualStateGroup>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="myListBoxStyle" TargetType="ListBox">
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Margin" Value="0"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="ItemContainerStyle" …Run Code Online (Sandbox Code Playgroud) wpf ×5
silverlight ×4
c# ×3
database ×2
xaml ×2
asp.net-mvc ×1
binding ×1
bower ×1
listbox ×1
mef ×1
mvvm ×1
ninject ×1
node.js ×1
npm ×1
prism ×1
security ×1
sql-server ×1
styles ×1
web-services ×1