GVKun编程网logo

如何在 C 中的 Windows Linux 子系统上使用 System V IPC 消息队列?(linux消息队列msgrcv)

2

此处将为大家介绍关于如何在C中的WindowsLinux子系统上使用SystemVIPC消息队列?的详细内容,并且为您解答有关linux消息队列msgrcv的相关问题,此外,我们还将为您介绍关于ASP

此处将为大家介绍关于如何在 C 中的 Windows Linux 子系统上使用 System V IPC 消息队列?的详细内容,并且为您解答有关linux消息队列msgrcv的相关问题,此外,我们还将为您介绍关于ASP.NET Core 3.1:System.InvalidCastException:无法将“System.Int32”类型的对象转换为“System.Int64”类型、Automapper 错误:System.InvalidOperationException:'缺少从 System.String 到 System.Char 的映射、C# WPF 中的错误:“System.Windows.Style”不是属性“System.Windows.Controls.Control.Template” MainViewResource.xaml主窗口.xaml、c# – LINQ to Entities不识别方法’System.String StringConvert(System.Nullable`1 [System.Double])的有用信息。

本文目录一览:

如何在 C 中的 Windows Linux 子系统上使用 System V IPC 消息队列?(linux消息队列msgrcv)

如何在 C 中的 Windows Linux 子系统上使用 System V IPC 消息队列?(linux消息队列msgrcv)

如何解决如何在 C 中的 Windows Linux 子系统上使用 System V IPC 消息队列?

有没有一种方法可以在不使用管道的情况下在 Windows 上使用 Unix System V IPC 消息队列? System V 共享内存和信号量工作,但消息在 Windows 上似乎不起作用。

ASP.NET Core 3.1:System.InvalidCastException:无法将“System.Int32”类型的对象转换为“System.Int64”类型

ASP.NET Core 3.1:System.InvalidCastException:无法将“System.Int32”类型的对象转换为“System.Int64”类型

如何解决ASP.NET Core 3.1:System.InvalidCastException:无法将“System.Int32”类型的对象转换为“System.Int64”类型

Picture Error

我的控制器:

  1. [HttpDelete("{roomId}")]
  2. public async Task<IActionResult> Delete(string roomId)
  3. {
  4. var affectedResult = await _manageRoomService.Delete(roomId);
  5. if (affectedResult == 0)
  6. return BadRequest();
  7. return Ok();
  8. }

我的服务:我尝试调试,但它在代码块 foreach (var image in images) 中停止。

  1. public async Task<int> Delete(string roomId)
  2. {
  3. var room = await _context.Rooms.FindAsync(roomId);
  4. if (room == null)
  5. throw new EWebHotelException($"Cannot find a room: {roomId}");
  6. var images = _context.RoomImages.Where(i => i.RoomId == roomId);
  7. foreach (var image in images)
  8. {
  9. await _storageService.DeleteFileAsync(image.ImagePath);
  10. }
  11. _context.Rooms.Remove(room);
  12. return await _context.SaveChangesAsync();
  13. }

我在 FileStorageService.cs 中的方法:

  1. public async Task DeleteFileAsync(string fileName)
  2. {
  3. var filePath = Path.Combine(_userContentFolder,fileName);
  4. if (File.Exists(filePath))
  5. {
  6. await Task.Run(() => File.Delete(filePath));
  7. }
  8. }

在 RoomImages 表中,列 Id 的类型为 int 32。

Automapper 错误:System.InvalidOperationException:'缺少从 System.String 到 System.Char 的映射

Automapper 错误:System.InvalidOperationException:'缺少从 System.String 到 System.Char 的映射

如何解决Automapper 错误:System.InvalidOperationException:''缺少从 System.String 到 System.Char 的映射

我需要使用 automapper 从 Company 模型中填充 CompanyVM 中的地址字段。一个公司可能有许多地址。最好我想要一个也是主要的活动地址。否则,我只想要一个活动地址。如果不行,给我一个地址。

这是公司模型:

  1. public class Company
  2. {
  3. public int CompanyID { get; set; }
  4. public string Name { get; set; }
  5. public string Type { get; set; }
  6. public string Industry { get; set; }
  7. public string DBA { get; set; }
  8. public string TaxID { get; set; }
  9. public bool Active { get; set; } = true;
  10. public virtual ICollection<Address> Addresses { get; set; } = new List<Address>();

这是地址模型:

  1. public class Address
  2. {
  3. public int AddressID { get; set; }
  4. public string Type { get; set; }
  5. public string Street1 { get; set; }
  6. public string Street2 { get; set; }
  7. public string City { get; set; }
  8. public string State { get; set; }
  9. public string ZipCode { get; set; }
  10. public string County { get; set; }
  11. public string Country { get; set; }
  12. public bool Primary { get; set; } = false;
  13. public bool Active { get; set; } = true;
  14. public int? CompanyCompanyID { get; set; }

我需要绘制其中的许多地图,但现在只是想让它为 Street1 工作。

以下是我尝试使用的自动映射器语句:

  1. public class CompanyProfile : Profile
  2. {
  3. public CompanyProfile()
  4. {
  5. CreateMap<Company,CompanyVM>()
  6. .ForMember(vm => vm.Street,opt => opt.MapFrom(model =>
  7. model.Addresses.Where(x => x.CompanyCompanyID != null && x.Active && x.Primary).Select(x => x.Street1) ??
  8. model.Addresses.Where(x => x.CompanyCompanyID != null && x.Active).Select(x => x.Street1) ??
  9. model.Addresses.Where(x => x.CompanyCompanyID != null).Select(x => x.Street1)))
  10. .ReverseMap();
  11. }
  12. }

这是 CompanyVM:

  1. [Grid2(nameof(CompanyID),FavoritesEnabled = true,RecentRecordAction = "Details",FetchDataOnLoad = true
  2. )]
  3. public class CompanyVM : GridRecordVM
  4. {
  5. public virtual int CompanyID { get; set; }
  6. [GridColumn2(TemplateType = GridTemplateType.DefaultDetailLink,IncludeInGeneralSearch = true)]
  7. public virtual string Name { get; set; }
  8. [GridColumn2]
  9. public virtual string Type { get; set; }
  10. [LockedFilter(FilterOperator.IsEqualTo,true)]
  11. public virtual bool Active { get; set; }
  12. [display(Name = "Industry")]
  13. [MaxLength(20,ErrorMessage = "Industry cannot be longer that 20 characters.")]
  14. public string Industry { get; set; }
  15. [display(Name = "DBA")]
  16. [MaxLength(50,ErrorMessage = "DBA name cannot be longer that 50 characters.")]
  17. public string DBA { get; set; }
  18. [display(Name = "Tax Id")]
  19. [MaxLength(50,ErrorMessage = "TaxID name cannot be longer that 50 characters.")]
  20. public string TaxID { get; set; }
  21. [display(Name = "Street",Description = "Street")]
  22. public string Street { get; set; }
  23. //these items set to ignoremap until mapping sorted out
  24. [display(Name = "City",Description = "City")]
  25. [IgnoreMap]
  26. public string City { get; set; }
  27. [display(Name = "State",Description = "State")]
  28. [IgnoreMap]
  29. public string State { get; set; }
  30. [display(Name = "ZipCode",Description = "ZipCode")]
  31. [IgnoreMap]
  32. public string ZipCode { get; set; }
  33. [Phone]
  34. [display(Name = "Phone Number",Description = "Phone Number")]
  35. [IgnoreMap]
  36. public string PhoneNumber { get; set; }
  37. [EmailAddress]
  38. [display(Name = "Email Address",Description = "Email Address")]
  39. [IgnoreMap]
  40. public string EmailAddress { get; set; }
  41. }

抛出运行时错误:system.invalidOperationException: ''Missing map from System.String to System.Char。使用 CreateMap 创建。''我已经看过很多关于这个问题的帖子,也已经阅读了其中的很多,但对我来说仍然没有意义。我的源和目标字段都是字符串。我做错了什么?

解决方法

解决方案是将 CreateMap .ForMember 语句格式化如下:

  1. CreateMap<Company,CompanyVM>()
  2. .ForMember(x => x.Street,opt => opt.MapFrom(src =>
  3. src.Addresses.Where(x => x.Active && x.Primary).FirstOrDefault() != null
  4. ? src.Addresses.Where(x => x.Active && x.Primary).FirstOrDefault().Street1
  5. : src.Addresses.Where(x => x.Active).FirstOrDefault() != null
  6. ? src.Addresses.Where(x => x.Active).FirstOrDefault().Street1
  7. : src.Addresses.FirstOrDefault() != null
  8. ? src.Addresses.FirstOrDefault().Street1
  9. : string.Empty))

C# WPF 中的错误:“System.Windows.Style”不是属性“System.Windows.Controls.Control.Template” MainViewResource.xaml主窗口.xaml

C# WPF 中的错误:“System.Windows.Style”不是属性“System.Windows.Controls.Control.Template” MainViewResource.xaml主窗口.xaml

如何解决C# WPF 中的错误:“System.Windows.Style”不是属性“System.Windows.Controls.Control.Template” MainViewResource.xaml主窗口.xaml?

我正在使用 WPF MVVM 模式,并在 MainViewResource.xaml 中制作了控件的样式。

通常没有问题,但是当Slider中包含Control时,会出现以下错误。

''System.Windows.Style'' 不是属性 ''System.Windows.Controls.Control.Template'' 的有效值。

运行该应用程序没有问题,但 xaml 屏幕上不显示 Control

MainViewResource.xaml

<Style targettype="{x:Type Slider}" x:Key="SLD.INPUT">
    ...
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate targettype="{x:Type Slider}">
                <ControlTemplate.Resources>
                    ...
                </ControlTemplate.Resources>
                <Border x:Name="border">
                    <Grid>
                        <DockPanel>
                            <Border x:Name="PART_SelectionRange">
                                <Rectangle x:Name="sliderBar"/>
                            </Border>
                            <Border>
                                <Rectangle x:Name="PART_NegativeSelection"/>
                            </Border>
                        </DockPanel>
                        <Track x:Name="PART_Track">
                            <Track.Thumb>
                                <Thumb x:Name="thumb"/>
                            </Track.Thumb>
                        </Track>
                    </Grid>
                </Border>
                <ControlTemplate.Triggers>
                    <DataTrigger Binding="{Binding ElementName=thumb,Path=IsMouSEOver}" Value="true">
                        <Setter TargetName="sliderBar" Property="Fill" Value="{StaticResource LGB.SLD.FG.OVER}"/>
                    </DataTrigger>
                    <DataTrigger Binding="{Binding ElementName=thumb,Path=IsDragging}" Value="true">
                        <Setter TargetName="sliderBar" Property="Fill" Value="{StaticResource LGB.SLD.FG.DRAG}"/>
                    </DataTrigger>
                    <Trigger Property="IsEnabled" Value="false">
                        <Setter TargetName="PART_SelectionRange" Property="Visibility" Value="Collapsed"/>
                    </Trigger>
                </ControlTemplate.Triggers>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

<Style targettype="{x:Type Control}" x:Key="CTL.INPUT">
    <Setter Property="Grid.Row" Value="1"/>
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate targettype="{x:Type Control}">
                <ControlTemplate.Resources>
                    <Style targettype="{x:Type TextBlock}" x:Key="IN.CONTENT">
                        ...
                        <Setter Property="Text" Value="{Binding ElementName=slider2,Path=Value,Converter={StaticResource StringFormatConverter}}"/>
                    </Style>
                </ControlTemplate.Resources>
                <Grid>
                    <Grid.ColumnDeFinitions>
                        <ColumnDeFinition Width="Auto"/>
                        <ColumnDeFinition Width="*"/>
                    </Grid.ColumnDeFinitions>
                    <Slider x:Name="slider2"/>  // I guess here is the problem.
                    <TextBlock/>
                </Grid>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

主窗口.xaml

<Control/>

xaml 屏幕没有显示如下内容...

但是,当执行时,控件显示正确。

enter image description here

MainViewResource.xaml 正确注册到App.xaml,其他控件的样式没问题。仅当使用 Slider 的自定义样式作为 StaticResource 时才会出现问题。有谁知道我错过了什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

c# – LINQ to Entities不识别方法’System.String StringConvert(System.Nullable`1 [System.Double])

c# – LINQ to Entities不识别方法’System.String StringConvert(System.Nullable`1 [System.Double])

我不知道为什么我得到这个错误.我已经使用这个功能与以前版本的实体框架,但我已经设置了一个新的项目使用EF6,它不合作.
using System.Data;
using System.Data.Objects.sqlClient;

e.Result = from n in MyDB.tblBulletins
     where n.AnncStart <= DateTime.Now && n.AnncEnd > DateTime.Now && n.Approved == true
     orderby n.AnncStart descending,n.AnncDate descending
     select new
     {
        n.RecID,AnncTitle = n.AnncTitle + " <a href='bulletinAdd.aspx?ID=" + sqlFunctions.StringConvert((double)n.RecID).Trim() + "'><Edit></a>",AnncText = (n.AnncImg == null ? n.AnncText : "<a href='images/bulletin/" + n.AnncImg + "'><img src='images/bulletin/" + n.AnncImg + "'alt='Click for larger image'/></a>" + n.AnncText),Email = (n.Email == null ? "" : "<br/><a href='mailto:" + n.Email + "'>" + n.Email + "</a>"),n.AnncType,n.AnncDate,n.AnncEnd,n.v_EmpBasicInfo.Name
      };

当我运行这个我得到
LINQ to Entities不会识别方法’System.String StringConvert(System.Nullable`1 [System.Double])’方法,并且此方法不能转换为存储表达式.

n.RecID是sql数据库中的表上的一个int主键(sql Server Standard Edition)

所有我似乎通过搜索找到的人是推荐StringConvert而不是ToString

添加 – 堆栈跟踪:

[NotSupportedException: LINQ to Entities does not recognize the method 'System.String StringConvert(System.Nullable`1[System.Double])' method,and this method cannot be translated into a store expression.]
System.Data.Entity.Core.Objects.ELinq.DefaultTranslator.Translate(ExpressionConverter parent,MethodCallExpression call) +194
System.Data.Entity.Core.Objects.ELinq.MethodCallTranslator.TypedTranslate(ExpressionConverter parent,MethodCallExpression linq) +976
System.Data.Entity.Core.Objects.ELinq.TypedTranslator`1.Translate(ExpressionConverter parent,Expression linq) +88
System.Data.Entity.Core.Objects.ELinq.ExpressionConverter.TranslateExpression(Expression linq) +148
System.Data.Entity.Core.Objects.ELinq.BinaryTranslator.TypedTranslate(ExpressionConverter parent,BinaryExpression linq) +122
System.Data.Entity.Core.Objects.ELinq.TypedTranslator`1.Translate(ExpressionConverter parent,BinaryExpression linq) +87
System.Data.Entity.Core.Objects.ELinq.TypedTranslator`1.Translate(ExpressionConverter parent,Expression linq) +88
System.Data.Entity.Core.Objects.ELinq.ExpressionConverter.TranslateExpression(Expression linq) +148
System.Data.Entity.Core.Objects.ELinq.NewTranslator.TypedTranslate(ExpressionConverter parent,NewExpression linq) +520
System.Data.Entity.Core.Objects.ELinq.TypedTranslator`1.Translate(ExpressionConverter parent,Expression linq) +88
System.Data.Entity.Core.Objects.ELinq.ExpressionConverter.TranslateExpression(Expression linq) +148
System.Data.Entity.Core.Objects.ELinq.ExpressionConverter.TranslateLambda(LambdaExpression lambda,DbExpression input) +168
System.Data.Entity.Core.Objects.ELinq.ExpressionConverter.TranslateLambda(LambdaExpression lambda,DbExpression input,DbExpressionBinding& binding) +160
System.Data.Entity.Core.Objects.ELinq.OneLambdaTranslator.Translate(ExpressionConverter parent,MethodCallExpression call,DbExpression& source,DbExpressionBinding& sourceBinding,DbExpression& lambda) +168
System.Data.Entity.Core.Objects.ELinq.SelectTranslator.Translate(ExpressionConverter parent,MethodCallExpression call) +70
System.Data.Entity.Core.Objects.ELinq.SequenceMethodTranslator.Translate(ExpressionConverter parent,SequenceMethod sequenceMethod) +47
System.Data.Entity.Core.Objects.ELinq.MethodCallTranslator.TypedTranslate(ExpressionConverter parent,MethodCallExpression linq) +141
System.Data.Entity.Core.Objects.ELinq.TypedTranslator`1.Translate(ExpressionConverter parent,Expression linq) +88
System.Data.Entity.Core.Objects.ELinq.ExpressionConverter.TranslateExpression(Expression linq) +148
System.Data.Entity.Core.Objects.ELinq.ExpressionConverter.Convert() +50
System.Data.Entity.Core.Objects.ELinq.ELinqQueryState.GetExecutionPlan(Nullable`1 forMergeOption) +563
System.Data.Entity.Core.Objects.<>c__displayClassb.<GetResults>b__a() +83
System.Data.Entity.Core.Objects.ObjectContext.ExecuteInTransaction(Func`1 func,IDbExecutionStrategy executionStrategy,Boolean startLocalTransaction,Boolean releaseConnectionOnSuccess) +499
System.Data.Entity.Core.Objects.<>c__displayClassb.<GetResults>b__9() +271
System.Data.Entity.sqlServer.DefaultsqlExecutionStrategy.Execute(Func`1 operation) +251
System.Data.Entity.Core.Objects.ObjectQuery`1.GetResults(Nullable`1 forMergeOption) +600
   System.Data.Entity.Core.Objects.ObjectQuery`1.<System.Collections.Generic.IEnumerable<T>.GetEnumerator>b__0() +89
System.Lazy`1.CreateValue() +416
System.Lazy`1.LazyInitValue() +152
System.Lazy`1.get_Value() +75
System.Data.Entity.Internal.LazyEnumerator`1.MoveNext() +40
System.Collections.Generic.List`1..ctor(IEnumerable`1 collection) +381
System.Linq.Enumerable.ToList(IEnumerable`1 source) +58

[TargetInvocationException: Exception has been thrown by the target of an invocation.]
System.RuntimeMethodHandle.InvokeMethod(Object target,Object[] arguments,Signature sig,Boolean constructor) +0
System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj,Object[] parameters,Object[] arguments) +92
System.Reflection.RuntimeMethodInfo.Invoke(Object obj,BindingFlags invokeAttr,Binder binder,CultureInfo culture) +108
System.Reflection.MethodBase.Invoke(Object obj,Object[] parameters) +19
System.Web.UI.WebControls.QueryableDataSourceHelper.ToList(IQueryable query,Type dataObjectType) +225
System.Web.UI.WebControls.LinqDataSourceView.ExecuteSelect(DataSourceSelectArguments arguments) +549
System.Web.UI.WebControls.Repeater.GetData() +55
System.Web.UI.WebControls.Repeater.CreateControlHierarchy(Boolean useDataSource) +89
System.Web.UI.WebControls.Repeater.OnDataBinding(EventArgs e) +61
System.Web.UI.WebControls.Repeater.DataBind() +105
System.Web.UI.WebControls.Repeater.EnsureDataBound() +49
System.Web.UI.WebControls.Repeater.OnPreRender(EventArgs e) +15
System.Web.UI.Control.PreRenderRecursiveInternal() +83
System.Web.UI.Control.PreRenderRecursiveInternal() +168
System.Web.UI.Control.PreRenderRecursiveInternal() +168
System.Web.UI.Control.PreRenderRecursiveInternal() +168
System.Web.UI.Control.PreRenderRecursiveInternal() +168
System.Web.UI.Control.PreRenderRecursiveInternal() +168
System.Web.UI.Control.PreRenderRecursiveInternal() +168
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint,Boolean includeStagesAfterasyncPoint) +974

解决方法

我有同样的问题,意识到我正在使用错误的sqlFunction类型.请确保您引用了正确的命名空间:
using System.Data.Entity.sqlServer;

并不是:

using System.Data.Objects.sqlClient;

关于如何在 C 中的 Windows Linux 子系统上使用 System V IPC 消息队列?linux消息队列msgrcv的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于ASP.NET Core 3.1:System.InvalidCastException:无法将“System.Int32”类型的对象转换为“System.Int64”类型、Automapper 错误:System.InvalidOperationException:'缺少从 System.String 到 System.Char 的映射、C# WPF 中的错误:“System.Windows.Style”不是属性“System.Windows.Controls.Control.Template” MainViewResource.xaml主窗口.xaml、c# – LINQ to Entities不识别方法’System.String StringConvert(System.Nullable`1 [System.Double])的相关知识,请在本站寻找。

本文标签: