小编Ωme*_*Man的帖子

编译器警告CS0067:从不使用该事件

我有一个我正在使用的事件,所以我真的不明白这个警告的真正含义.有人可以澄清吗?

public abstract class Actor<T> : Visual<T> where T : ActorDescription
{
    #region Events
    /// <summary>
    /// Event occurs when the actor is dead
    /// </summary>
    public event Action Dead;
    #endregion

/// <summary>
    /// Take damage if the actor hasn't taken damage within a time limit
    /// </summary>
    /// <param name="damage">amount of damage</param>
    public void TakeDamage(int damage)
    {
        if (damage > 0 && Time.time > m_LastHitTimer + m_DamageHitDelay)
        {
            m_CurrentHealth -= damage;

            if (m_CurrentHealth <= 0)
            {
                m_CurrentHealth = 0; …
Run Code Online (Sandbox Code Playgroud)

c# events

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

使用ViewModel中的多个变量绑定WPF控件可见性

我正在编写一个WPF用户控件,它显示一个包含多个页面的动态生成的TabControl,每个页面依次包含一个动态生成的控件列表(TextBox,Checkbox等).

我想根据用户是否有权查看它们来设置TextBox,CheckBox控件的可见性.此权限是每个控件ViewModel('VisiblyBy')上的值的组合,也是整个UserControl ViewModel('UserRole')的属性的组合.我刚刚开始使用WPF,但标准方法似乎是使用ValueConvertor - 但我不明白我如何编写一个可以组合/访问不同属性(VisiblyBy和UserRole)的方法,因为它们存在于不同的级别在我的ViewModel文件中.

这是我绑定到ViewModel的XAML的一部分:

<TabControl ItemsSource="{Binding VariableData.Pages}" SelectedIndex="0">
<!-- this is the header template-->
   <TabControl.ItemTemplate>
  <DataTemplate>
     <TextBlock Text="{Binding Title}" FontWeight="Bold"/>
  </DataTemplate>
</TabControl.ItemTemplate>
            
<!-- this is the tab content template-->
   <TabControl.ContentTemplate>
  <DataTemplate>
     <StackPanel>
        <ListBox  Grid.IsSharedSizeScope="True" 
                  ItemsSource="{Binding Variables}"
                  ItemTemplateSelector="{StaticResource templateSelector}">
        </ListBox>
        <StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
           <Button Content="Cancel" />
               <Button Content="Submit" 
                       Command="{Binding DataContext.CommitChangesCommand, 
                                   RelativeSource={RelativeSource FindAncestor, 
                                   AncestorType={x:Type TabControl}}}" />
        </StackPanel>
    </StackPanel>
</DataTemplate>
  </TabControl.ContentTemplate>
</TabControl>
Run Code Online (Sandbox Code Playgroud)

我还需要扩展控制未来可见性的变量数量,因为它还取决于使用它的应用程序的位置.

c# wpf xaml

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

如何隐藏项目?

我有一个大型 VS 解决方案,但我只处理两个不同的项目,但需要加载所有项目才能进行构建。

是否可以只查看我感兴趣的项目而不更改解决方案的结构以进行构建?

如果不可能,但有解决方法吗?

visual-studio visual-studio-2013

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

当ItemSource是Observable集合时,从DataGrid中隐藏列

我有一个DataGridItemSource是利用可观察集合约束MVVM原型。我不想显示在我的类中显示的ID属性,DataGrid但是我仍然需要该属性存在。

我的代码:

XAML

<DataGrid ItemsSource="{Binding MyData}" IsReadOnly="True" Name="dtSearch" />
Run Code Online (Sandbox Code Playgroud)

查看模型

    private ObservableCollection<MyDataClass> myData;
    public ObservableCollection<MyDataClass> MyData
    {
        get { return myData; }
        set
        {
            myData= value;
            RaisePropertyChanged("MyData");
        }
    }
Run Code Online (Sandbox Code Playgroud)

可观察类

public partial class MyDataClass
{
    public int ID { get; set; }
    public string Code { get; set; }
    public string Name { get; set; }
    public string Type { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

是否可以提供ID属性以将其隐藏DataGrid

我是否需要为可见属性创建另一个类?

c# wpf xaml observablecollection mvvm

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

接口上的最小起订量通用方法设置

如何使用 C# 中的 moq 库设置通用方法?如

Interface IA
{
    void foo();
    void Get<T>();
}

[Fact]
public void SetupGenericMethod()
{
    var mock = new Mock<IA>();
    mock.Setup(x=> x.Get<It.IsAny<???>()>()
}
Run Code Online (Sandbox Code Playgroud)

c# unit-testing moq

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

使用另一个接口从接口实现泛型方法

我正在尝试创建一个通用接口,它允许我使用与数据库交互的方法.我希望我的业务应用程序能够实例化任何连接方法,并确保接口是相同的.

这是我现在正在尝试的简化版本.

数据库接口,其中IElement是另一个定义表的接口.

public interface IDatabase
{
    void setItem( IElement task );  //this works fine
    List<T> listTasks<T>() where T : IElement; // this doesn't
}
Run Code Online (Sandbox Code Playgroud)

IElement界面:

public interface IElement
{
    int id { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

IElement的实施:

public class TaskElement: IElement
{
    public int id { get; set; }
    public string name {get; set; }
}
Run Code Online (Sandbox Code Playgroud)

IDatabase的实现:

public class SQLiteDb: IDatabase
{
    public SqLiteDb( SQLiteConnection conn )
    {
        database = conn;
    }

    public void setItem( IElement task …
Run Code Online (Sandbox Code Playgroud)

c# generics interface

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

UseWsFederationAuthentication - AuthenticationException: 根据验证程序,远程证书无效

每次我尝试通过 VS2015 和 IIS Express 在我的开发盒上运行我的 MVC 项目时,我都会收到一个错误。它使用此代码对我们的 ADFS 服务器进行身份验证。

app.SetDefaultSignInAsAuthenticationType(CookieAuthenticationDefaults.AuthenticationType);
            app.UseCookieAuthentication(new CookieAuthenticationOptions());

            app.UseWsFederationAuthentication(
                new WsFederationAuthenticationOptions
                {
                    Wtrealm = realm,
                    MetadataAddress = adfsMetadata
                });
Run Code Online (Sandbox Code Playgroud)

这是我在浏览器中遇到的错误。

[AuthenticationException: 根据验证程序,远程证书无效。]
System.Net.TlsStream.EndWrite(IAsyncResult asyncResult) +231
System.Net.PooledStream.EndWrite(IAsyncResult asyncResult) +15
System.Net.ConnectStream.WriteHeadersCallback(IAsyncResult) ar) +119

[WebException: 底层连接已关闭:无法为 SSL/TLS 安全通道建立信任关系。]
System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) +606 System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar) + 64

[HttpRequestException: 发送请求时发生错误。]
System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) +92
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) +58 System.Runtime.CompilerServices.TaskAwaiter` 1.GetResult() +28 Microsoft.IdentityModel.Protocols.d__0.MoveNext() +453

[IOException:无法从以下位置获取文档:https://adfs.DOMAIN.com/FederationMetadata/2007-06/FederationMetadata.xml] Microsoft.IdentityModel.Protocols.d__0.MoveNext() +830 System.Runtime.CompilerServices.TaskAwaiter。 ThrowForNonSuccess(Task task) +92
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) +58 System.Runtime.CompilerServices.TaskAwaiter 1.GetResult() +28 Microsoft.IdentityModel.Protocols.<GetAsync>d__1.MoveNext() +606 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) +92 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) …

asp.net-mvc ssl-certificate ws-federation owin adfs3.0

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

Azure APIM无法从Function App创建API

当我尝试通过使用API​​M在APIM中创建API时Create from Function App,我填写了字段并单击Create。该操作会提供等待点,并在五秒钟后返回并说

无法创建API。请稍后再试。

我可以创建一个空白的API,但是不能从现有的功能应用程序中创建一个。我尝试了多种组合,没有产品,所有产品,没有版本,版本..etc。没运气。

有什么想法吗?


在此处输入图片说明


笔记

  • 有问题的功能是HTTP触发器。
  • 该功能在我的开发盒和Azure中本地工作。
  • APIM Tier是开发人员
  • 在该Function应用程序上,我报告了在Visual Studio中发布期间,尝试在发布失败之前管理应用程序设置并尝试添加新设置会导致Visual Studio意外关闭。 不知道是否在“发布相关”上管理应用程序设置

azure-api-management

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

.NET Core 3预览WPF错误:“要创建此项目类型,请转到“工具...”。

我今天安装了.NET Core 3 Runtime和SDK Preview 9,以制作WPF应用程序。但是,当我尝试创建它时,出现以下错误:“要创建此项目类型,请转到“工具” |“选项” |“环境” |“预览功能”,然后选中“使用.NET Core SDK的预览”(类似于无法创建WPF .NET核心应用程序

唯一的问题是我启用了此功能,并且按照提示重新启动了计算机,但仍然收到相同的错误消息。

我已经在Windows 10上运行了Visual Studio 2019,安装了SDK 3.0.100-preview9和Runtime 3.0.0-preview9。

c# wpf visual-studio-2019 .net-core-3.0

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

EditForm 需要 Model 参数或 EditContext 参数

如何解决此 Blazor 服务器错误?

EditForm 需要 Model 参数或 EditContext 参数

我在下面创建了一个最低限度可重复的示例。问题似乎是因为模型没有实例化......为什么下面的简单页面会抛出此错误?

@page "/"
<EditForm @Model="@person">
    <input @bind="@person.FirstName" />
    <input @bind="@person.LastName" />
</EditForm>
@code 
{
    public Person person = new Person();
    protected override Task OnInitializedAsync()
    {
        person = new Person
        {
            FirstName = "Fred",
            LastName = "Flintstone"
        };
        return base.OnInitializedAsync();
    }
}
Run Code Online (Sandbox Code Playgroud)

c# blazor-server-side

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