小编Rod*_*257的帖子

我是如何在构造函数之后立即得到此NullReferenceException错误的?

我已经在我们的内联网上运行了几个星期的asp.net网站.我收到了来自我的application_error电子邮件发送方法的电子邮件,其中包含未处理的异常.

这是(我已经清理了一些路径以使其更好地显示)

例外:对象引用未设置为对象的实例.堆栈跟踪:位于System.Collections.Generic.Dictionary`2.Insert(TKey键,TValue值,布尔加法)的System.Collections.Generic.Dictionary`2.Add(TKey键,TValue值)位于TimesheetDomain.DataMappers.StaffMemberData TimesheetDomain\DataMappers\StaffMemberData.cs中的.ReadStaff(SqlDataReader reader):第362行

在TimesheetDomain\DataMappers\StaffMemberData.cs中的TimesheetDomain.DataMappers.StaffMemberData.GetStaffMember(String name):第401行

在TimesheetDomain\ServiceLayer\TimesheetManager.cs中的TimesheetDomain.ServiceLayer.TimesheetManager.GetUserFromName(String name):第199行

位于\ App_Code\UserVerification.cs中的UserVerification.GetCurrentUser():位于\ WebTimesheets\WebTimesheets.master.cs中的WebTimesheets.OnInit(EventArgs e)第29行:第159行

System.Web.UI.Page.ProcessRequestMain上的System.Web.UI.Control.InitRecursive(Control namingContainer)中的System.Web.UI.Control.InitRecursive(Control namingContainer)(Boolean includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint)

基本上它看起来像我的ReadStaff方法错误,它读取数据读取器来构建人员成员对象.这是一些代码:

while (reader != null && reader.Read())
{
    StaffMember newMember = null;
    string firstName = reader["FirstName"].ToString();
    string lastName = reader["LastName"].ToString();
    int staffID = (int)reader["StaffID"];
    int employSection = (int)reader["EmploySection"];
    StaffType employType = (StaffType)employSection;
    string emailAddress = reader["EmailInt"].ToString();
    int employCode = (int)reader["ibbwid"];

    //check if they are an admin staff member 
    if (IsAdminStaff(employType))
    {
        newMember = new AdminOfficer(firstName, lastName, employType, staffID, emailAddress, employCode);
    }
    else …
Run Code Online (Sandbox Code Playgroud)

c# asp.net nullreferenceexception

53
推荐指数
2
解决办法
2万
查看次数

node.js上swagger中的可空字段

我花了很多时间试图找到在Node.JS中创建swagger文档的解决方案.主库是swagger-node,在其中创建一个swagger yaml文件,然后将控制器添加到它.它会自动在您的应用中提供swagger ui文档,并根据您在yaml中指定的模型对请求和响应进行验证.

这很整洁,但是我要求我希望明确能够返回或接受某些字段null作为值,例如:

{ 
  id: 123,
  description: "string",
  date_sent: null
}
Run Code Online (Sandbox Code Playgroud)

我不想删除date_sent密钥,我想明确地将其声明为null.

swagger规范不支持anyOfJSON模式通常如何做到这一点我相信.

我想知道是否有解决方法?也许某些库可用于具有x-nullable可以添加的供应商特定标志的节点,或者某种方式指定我的非必需字段应该都可以为空.

我是否必须自己写一些带有我的swagger文件的东西,然后在验证器中间件运行之前修改它,或者是否有某些可以建议的解决方法?

node.js swagger swagger-ui swagger-editor

14
推荐指数
3
解决办法
1万
查看次数

WPF Toolkit Datagrid - 如何关闭选择?

我在WPF中有一个数据网格,我绑定到一个对象.

我有一个DataGridCheckBoxColumn,我希望用户能够通过并勾选他们想要的那些.问题是他们必须点击两次,一次选择然后再次检查/取消选中.你究竟怎么把它关掉,我一直在寻找方法来寻找答案.datagrid具有SelectionMode和SelectionUnit属性 - 两者都不接受'none'或'go away'

任何帮助表示赞赏!我的代码在下面供参考

<my:DataGrid Margin="15"  Name="dgPreview" 
        AutoGenerateColumns="False" CanUserSortColumns="True" 
             CanUserDeleteRows="True" 
             Background="White" 
             ColumnHeaderHeight="20" 
             VerticalScrollBarVisibility="Visible" 
             RowDetailsVisibilityMode="Visible" 
             >

    <my:DataGrid.Columns>
        <my:DataGridCheckBoxColumn  MinWidth="50" Width="Auto" Header="Include" Binding="{Binding Include}" />
        <my:DataGridTextColumn MinWidth="50"  Width="Auto" Header="Override #" Binding="{Binding OverrideNumber}" />
        <my:DataGridTextColumn MinWidth="220" Width="*" Header="Name" Binding="{Binding Name}" />
        <my:DataGridTextColumn MinWidth="50" Width="Auto" IsReadOnly="True"  Header="Preview" Binding="{Binding Preview}" />
    </my:DataGrid.Columns>
</my:DataGrid>
Run Code Online (Sandbox Code Playgroud)

c# wpf xaml datagrid wpftoolkit

12
推荐指数
1
解决办法
6881
查看次数

任何viewmodel dom更新的Knockout JS事件

每当通过Knockout.JS更新DOM时,我需要运行一个jquery ui位代码.我意识到这可以使用自定义绑定来完成,但这似乎与特定的视图模型有关,我想全局地这样做,所以每当它发生在它触发的任何viewmodel上时?

假设我总是希望在所有带有'needsdate'类的文本框上使用JQuery日期选择器,而不是将其添加到我的每个视图模型中,如果我可以在全局范围内完成它将会很棒.

这可能吗?

javascript events knockout.js

8
推荐指数
1
解决办法
2604
查看次数

在postsharp中的AssemblyLoadException,来自引用的DLL的参数的问题?

我刚刚开始使用postharp/AOP.我想为C#做一些工具来跟踪我为一些软件编写的一些插件的用法.

我正在尝试使用OnMethodBoundaryAspect类来记录调用方法时某些参数的值.这些参数是外部DLL中引用的类型.

当我将我的属性添加到方法时,项目将无法生成,我收到以下错误

错误2未处理的异常(2.0.5.1204,64位,CLR 2.0,发布):PostSharp.CodeModel.AssemblyLoadException:加载程序集"C:\ Program Files\Autodesk\Revit Structure 2011\Program\RevitAPI.dll"时出错:可能不加载文件或程序集'revitapi,Version = 0.0.0.0,Culture = neutral,PublicKeyToken = null'或其依赖项之一.不支持操作.(HRESULT异常:0x80131515)

REvitAPI.dll是包含类型的文件.我还测试过只是将属性添加到项目中但未将其应用于任何方法,这也会导致错误.所以看起来它与方法参数类型本身无关,而只是存在这个DLL.

有没有人遇到过这个问题,或者有人能指出我在哪里获得更多信息的正确方向?

c# aop postsharp

7
推荐指数
1
解决办法
1958
查看次数

带有复选框多重检查的WPF列表框

我有一个WPF列表框,其中添加了复选框,目前它看起来像这样: WPF复选框

要选择所有不同的项目,我必须逐个单击每个复选框,或者选择全部(我有一个单独的按钮).但如果我只想选择一半,那就太痛苦了.

我希望能够做的是单击一个,按住shift,单击另一个,然后单击其中一个旁边的复选框以切换所有选定的复选框.我认为Windows Forms允许这很容易,但我不确定在WPF中该怎么做?目前,我已将其设置为仅允许一次选择一个(选择意味着什么,其全部都与检查有关).

理想情况下我也有它所以选择一些东西检查它(即,而不是必须选择小复选框,你可以点击单词)但我认为这可能很难用我的shift +选择的东西.

    <Window.Resources>
    <DataTemplate x:Key="ListBoxItemTemplate" >

        <WrapPanel>
            <CheckBox Focusable="False" IsChecked="{Binding Selected}" VerticalAlignment="Center" />
            <ContentPresenter Content="{Binding Name, Mode=OneTime}"  Margin="2,0" />
        </WrapPanel>

    </DataTemplate>

</Window.Resources>

<ListBox Margin="10" HorizontalAlignment="Stretch" Name="lbSheets" 
                 VerticalAlignment="Stretch" Width="Auto" Grid.Row="1" MinWidth="321"
                 MinHeight="40" HorizontalContentAlignment="Left" 
                 ItemTemplate="{StaticResource ListBoxItemTemplate}" VerticalContentAlignment="Top" Background="#FFDCEBEE" SelectionMode="Single">

</ListBox>
Run Code Online (Sandbox Code Playgroud)

我希望这一切都有道理 - 在WPF中执行此操作的最佳方法是什么?

.net c# wpf

7
推荐指数
1
解决办法
2万
查看次数

ios mapkit通过点击地图来关闭注释标注

我有一个mapkit应用程序在地图上放置注释,当你按下它们时,它会显示带有title属性的标注.

这工作正常,但用户无法关闭它们.他们保持开放,直到他们点击另一个注释.我不能认为用户可以在地图上点击其他地方(或再次点击注释)关闭它吗?

我有一种感觉这是默认设置,所以我正在做的事情就是填充它?我有一个手势识别器,我用它来检测一些地图点击

    UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]
                                            initWithTarget:self action:@selector(handleTap:)];
tap.numberOfTapsRequired = 1;

[self.mapView addGestureRecognizer: tap];
Run Code Online (Sandbox Code Playgroud)

这解雇了这个:

- (void)handleTap:(UITapGestureRecognizer *)sender {     
if (sender.state == UIGestureRecognizerStateEnded)  {   


    CGPoint tapPoint = [sender locationInView:sender.view.superview];
    CLLocationCoordinate2D coordinate = [self.mapView convertPoint: tapPoint toCoordinateFromView: self.mapView];

    if (pitStopMode && !pitStopMade){
            pitStopMade = YES;
        InfoAnnotation *annotation = [[InfoAnnotation alloc]
                       initNewPitstopWithCoordinate:coordinate];
        NSLog(@" Created Pit Stop");

        annotation.draggable = NO;
        //place it on the map
        [self.mapView addAnnotation: annotation];

        self.instructionLabel.text = @"Tap button again to remove";
        annotation.creatorId = self.localUser.deviceId;
        //send it to …
Run Code Online (Sandbox Code Playgroud)

objective-c mapkit ios

6
推荐指数
1
解决办法
4304
查看次数

NHibernate 3 Linq查询缓存

在刚刚使用ICriteria之后,我刚开始在NHibernate 3中使用LINQ和NHibernate.

这是一个示例查询:

ISession session = NHibernateSessionManager.Instance.GetSession();

var results = from project in session.Query<Project>()
              where project.ProjectState == ProjectState.Archive
              orderby project.ProjectNumber
              select project;

return results.ToList();
Run Code Online (Sandbox Code Playgroud)

如何设置缓存?我看了一下,其他问题似乎使用了不同的(可能是过时的?)语法,或者我做错了...

c# nhibernate caching

5
推荐指数
1
解决办法
1722
查看次数

ASP.NET MVC - 下拉列表选择 - 部分视图和模型绑定

我是ASP.NET MVC的新手,我正在努力找到最好的方法来做到这一点.这可能很简单,但我只是想做正确的事情所以我想我会问.

让我们说我的模型是这样的:

任务 - ID,描述,AssignedStaffMember

StaffMember - Id,FirstName,LastName

在我看来,我想创建一个新任务.我创建了一个强类型的Razor视图,并且可以使用EditorFor为Description创建文本框但是AssignedStaffMember呢?

我想要一个当前所有员工的下拉列表,并且可以选择一个,然后将其提交给一个动作方法 NewTask(string description, StaffMember assignedStaffMember) ,或者我可以为staffId而不是StaffMember对象提供一个int,并在动作中查找它方法.

做这个的最好方式是什么?我需要去数据库以获取员工名单,所以这就是我的想法:

  1. 对员工下拉列表进行部分查看,将使用几次并用于@Html.Action("ListStaff", "Staff")调用它.然后动作方法有

    public ActionResult ListStaff()
    {
        IEnumerable<StaffMember> model = _serviceLayer.GetAllStaff();
        return PartialView(model);
    }
    
    Run Code Online (Sandbox Code Playgroud)

    但是我不确定它如何与模型绑定一起工作,我的理解是它必须有正确的名称才能提交表单,我需要将名称传递给局部视图以放置元素我猜?

  2. 不要让它调用控制器来获取工作人员,而是创建一个包含我的Task和IEnumerable possibleStaff集合的ViewModel.可能会将此信息发送到局部视图.

  3. 一个Html助手?

  4. 编辑器可以以某种方式使用?

哪一个(或者更多)最好?以及如何进行模型绑定?

asp.net-mvc partial-views model-binding razor

5
推荐指数
1
解决办法
2万
查看次数

修改foreach循环内对象的属性不起作用?

这令我感到困惑.我正在使用PetaPoco从数据库中检索某些值,然后循环它们并检索一个值以分配给每个对象的一个​​属性.

    public IEnumerable<RetreaveIndex> FillResults(IEnumerable<RetreaveIndex> results)
    {
        //add the associated users
        foreach (RetreaveIndex index in results)
        {
            index.AssociatedUsers = _registeredUserDao.GetUsersByIndex(index).ToList();
        }
        return results;
    }
Run Code Online (Sandbox Code Playgroud)

当我在foreach循环期间设置断点时,正确设置了AssociatedUsers属性. 在foreach循环期间

但是在循环结束的断点处,它没有保存它? 在此输入图像描述

我很困惑,不应该将Index作为对正在被修改的内存中的位置的引用吗?毕竟这是一个对象.我在这里错过了什么?

.net c# foreach

5
推荐指数
1
解决办法
1822
查看次数