我知道之前曾问过这类问题,但其他方法现在都让我失望了.
正如我们的Windows服务轮询AD,给定一个LDAP(即LDAP://10.32.16.80)和该AD服务器中要搜索的用户组列表.它检索这些给定组中的所有用户,以递归方式搜索这些组以获取更多组.然后将每个用户添加到另一个应用程序认证用户列表中.
这部分应用程序运行成功.但是,我们需要每个用户的友好域名(即他们登录DOMAIN /用户名的一部分)
因此,如果有一个用户属于TEST域,名为Steve:TEST/steve就是他的登录名.我能够在广告中找到史蒂夫,但是我还需要将"TEST"与他的AD信息一起存储.
再一次,通过使用目录搜索器和我给出的LDAP IP,我可以找到'史蒂夫',但是考虑到LDAP IP,我如何才能找到友好的域名?
当我尝试以下代码时,我在尝试访问'defaultNamingContext'时遇到错误:
System.Runtime.InteropServices.COMException(0x8007202A):身份验证机制未知.
这是代码:
private string SetCurrentDomain(string server)
{
string result = string.Empty;
try
{
logger.Debug("'SetCurrentDomain'; Instantiating rootDSE LDAP");
DirectoryEntry ldapRoot = new DirectoryEntry(server + "/rootDSE", username, password);
logger.Debug("'SetCurrentDomain'; Successfully instantiated rootDSE LDAP");
logger.Debug("Attempting to retrieve 'defaultNamingContext'...");
string domain = (string)ldapRoot.Properties["defaultNamingContext"][0]; //THIS IS WHERE I HIT THE COMEXCEPTION
logger.Debug("Retrieved 'defaultNamingContext': " + domain);
if (!domain.IsEmpty())
{
logger.Debug("'SetCurrentDomain'; Instantiating partitions/configuration LDAP entry");
DirectoryEntry parts = new DirectoryEntry(server + "/CN=Partitions,CN=Configuration," + domain, username, password);
logger.Debug("'SetCurrentDomain'; …Run Code Online (Sandbox Code Playgroud) 我有一个keydown事件,我用来向表中添加一个空行.但是,如果在光标位于表的最后一行时发生keydown事件,我只希望添加新行.
这是我目前的jQuery事件..glCreditValue是一个输入文本框的类,它位于表行的最后一个TD中.因此,当用户选中该输入时,如果输入所在的TD位于表的最后一行,我想添加一个新行.
由于表数据是动态生成的,因此每行的最终TD都有一个带有.glCreditValue类的输入文本框.
$(".glCreditValue").keydown(function(event) {
var keycode = event.keyCode;
if (keycode == 9) {
//HERE i would like to make sure that i'm in the last row of the table
AddNewRow();
}
});
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用tr:last选择器,但我不确定从哪里开始.
就像前言一样,我对T-SQL语法知之甚少.
我想创建一个简单的SQL脚本,它将生成3个插入语句.
Insert A
Insert B
Insert C
Run Code Online (Sandbox Code Playgroud)
在插入B语句中插入一个语句的标识或"ID".插入C语句中将需要插入A和B的标识.
伪代码看起来像:
INSERT INTO tableA
VALUES ('blah', 'blah')
INSERT INTO tableB
VALUES (IDENTITY_FROM_A_INSERT, 'foo')
INSERT INTO tableC
VALUES (IDENTITY_FROM_A_INSERT, IDENTITY_FROM_B_INSERT)
Run Code Online (Sandbox Code Playgroud)
我该怎么写这个脚本?
我在服务器端有一个图像的字节数组.我的View页面上有一个img标签.
我想知道如何能够使用字节数组作为img标记的图像源.
我正在我的模型中检索字节数组,将其传递回我的控制器方法,然后我想以某种方式将它存储在ViewData中.然后在View页面的$(document).ready jQuery函数中以某种方式将该字节数组设置为我的IMG标记的源.
这可能吗?
我正在使用asp.net MVC,当我提交表单时,之前的开发人员已经嵌入了一些jQuery验证.
$('form').submit(function() {
...code done here to validate form fields
});
Run Code Online (Sandbox Code Playgroud)
问题是表单上的"保存"和"取消"按钮都会触发此提交jQuery函数.如果触发"取消"输入按钮,我不想激活验证逻辑(id ="cancel"name ="cancel"value ="cancel").有没有办法在这个提交函数中,我可以检索按下哪个输入按钮提交表单的ID,名称或值?
我刚刚开始真正进入Silverlight开发,我有一个特定的用例,我需要为特定用户的"会话"存储几个对象或字符串集合.我希望这是用户特定的,并且可以在整个Silverlight应用程序中访问.
我的第一个想法是在App.xaml上添加静态属性.
在用户登录时,我正在检索此用户可以从API调用访问的对象列表,然后将这些对象存储在App.xaml的静态属性中.
然后我可以在整个xaml页面中访问这些属性.
我的问题是,这真的是用户特定的吗?这是最佳做法吗?我应该在这种情况下使用隔离存储吗?隔离存储的局限性是什么?孤立存储本质上是用户特定的,正确的?
谢谢
我有一个实例,不是我自己选择的,但我在浏览器中有一个辅助弹出窗口.在表单提交回服务器端MVC方法后,在此方法完成后,我希望它关闭调用它的浏览器窗口.
有没有办法做到这一点,除了在"onReady"中返回一个javascript视图,告诉它关闭?
有没有一种简单的方法来禁用ListBox控件上的UI虚拟化?我正在尝试使用"FindName()"方法在ListBox控件中找到一个控件,但是如果控件明显偏离Web浏览器窗口,则它找不到控件.我几乎可以肯定,罪魁祸首是UI虚拟化.当控件从页面滚动时,不再通过"FindName()"成功检索它.
第二个我将它滚动回屏幕,它成功返回控件.
这是这个问题的延伸:
Silverlight:FrameworkElement.FindName()在浏览器窗口中不"可见"时找不到控件
用编码示例更新
这是我尝试检索控件的代码."DynamicTagFormFields"是ListBox控件.
textField tf = DynamicTagFormFields.FindName(s.KeyValue) as textField;
Run Code Online (Sandbox Code Playgroud)
如果我正在尝试检索的实际textField控件在屏幕上可供最终用户查看,则返回有效的"textField"对象.但是,如果我使用ListBox的垂直滚动条将textField控件滚出视图,然后再次强制进程,上述代码将返回null.
这是ListBox的XAML:
<ListBox x:Name="DynamicTagFormFields" Margin="0" Style="{StaticResource ListBoxStyle1}" ItemContainerStyle="{StaticResource ListBoxItemStyle4}" d:LayoutOverrides="Height" Grid.Row="2" IsTabStop="False" TabNavigation="Local" ScrollViewer.HorizontalScrollBarVisibility="Disabled"/>
Run Code Online (Sandbox Code Playgroud)
使用以下代码以编程方式将textField对象动态添加到ListBox:
DynamicTagFormFields.Items.Add(textFieldControl);
Run Code Online (Sandbox Code Playgroud) 我有一个MVC应用程序.在其中一个ASPX视图中,我有一个选择下拉列表.在select下拉列表中,我有一个"for"循环,循环遍历ViewData中的List.对于每个项目,它会在选择下拉列表中创建一个选项.
我的问题是,对于一个或多个项目,字符串值可能包含在"<>"字符中.
但是,在呈现页面时,该选项将插入到选择下拉列表中,但该值为空白字符串而不是"".
如何在dropdown的value属性中渲染"",我该怎么办呢.
这是我的代码:
<select class="formtext" id="siteSelectDropdown" onchange="siteDropDownChange();" style="display:inline">
<%foreach (WebClientLib.Site site in ViewData["Sites"] as List<WebClientLib.Site>)
{
<option value="<%=site.Id %>"><%=site.Name%></option>
}%>
Run Code Online (Sandbox Code Playgroud)
c# ×4
asp.net-mvc ×3
javascript ×2
jquery ×2
silverlight ×2
asp.net ×1
browser ×1
bytearray ×1
comexception ×1
dns ×1
forms ×1
html ×1
html-table ×1
listbox ×1
session ×1
sql ×1
string ×1
t-sql ×1