小编Saq*_*qib的帖子

为什么我的C#泛型方法中出现"错误:...必须是引用类型"?

在各种数据库表中,我有一个属性和一个值列.我正在使用Linq to SQL来访问数据库.

我正在编写一个方法,它返回一个包含从给定数据库表中检索的属性/值的字典:

private static Dictionary<string, string> GetProperties<T>(Table<T> table)
{
    Dictionary<string, string> properties = new Dictionary<string, string>();

    foreach (var row in table)
    {
        properties[row.Property]=row.Value;
    }

    return properties;
}
Run Code Online (Sandbox Code Playgroud)

编译后,我得到:

Error 1 The type 'T' must be a reference type in order to use it as parameter 'TEntity' in the generic type or method 'System.Data.Linq.Table<TEntity>'

我试过没有运气的搜索这个错误信息.

搜索StackOverflow时,这个问题似乎相似,但是关于参数List:Generic List <T>作为方法的参数 - 尽管参数仍然不是该问题的答案中的引用类型.

阅读MSDN上的C#编程指南:http://msdn.microsoft.com/en-us/library/twcad0zb(VS.80).aspx我看到他们的例子都通过引用传递参数.但是,在我的特定情况下,我无法看到如何通过引用传递,因为泛型类型仅用于指定Table的泛型类型.

任何指针都将非常感激.

PS:如果我需要时间接受答案,可能会出现这种情况,因为目前无法访问此功能(我是盲人并使用屏幕阅读器).

c# linq-to-sql

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

在.Net MAUI中获取Android CurrentActivity

我正在将 Xamarin.Android 项目移植到 .Net 6。

由于依赖关系,不可能将 Xamarin.Essentials 包含在 .Net 6 项目中。

因此,我将所有内容切换为使用 Microsoft.* 命名空间。除了 Xamarin.Essentials.Platform.CurrentActivity 之外,这很容易。

.Net MAUI 是否有此类的等效项?如果没有,除了将 Essentials 中的代码复制/粘贴到应用程序之外,还有其他好的选择吗?

android xamarin maui

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

在ASP.Net MVC中定义自定义URL路由

我定义了以下路线:

public static void RegisterRoutes(RouteCollection routes)
{
    routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

    routes.MapRoute(name: "Homepage", url: "", defaults: new { controller = "Restaurants", action = "Search" });
    routes.MapRoute(name: "About", url: "about", defaults: new { controller = "Home", action = "About" });
    routes.MapRoute(name: "Disclaimer", url: "disclaimer", defaults: new { controller = "Home", action = "Disclaimer" });
    routes.MapRoute(name: "Contact", url: "contact", defaults: new { controller = "Home", action = "Contact" });
    routes.MapRoute(name: "RestaurantDetails", url: "{id}/{slug}", defaults: new { controller = "Restaurant", action = "Details" });
    routes.MapRoute(name: "RestaurantLocationDetails", …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc routes routedebugger

20
推荐指数
1
解决办法
6908
查看次数

Silverlight中的自定义形状(从WPF移植应用程序)

我正在将WPF应用程序转换为Silverlight.

该应用程序包含一个继承自Shape的类.它会覆盖DefiningGeometry属性以返回Path对象.但是,Silverlight Shape类没有DefiningGeometry属性.

在互联网上阅读我发现其他人有同样的问题.该解决方案似乎涉及直接从Control继承,并将Content属性设置为路径.但是,我还想保留我的事件处理程序(MouseEnter,MouseLeave,GotFocus,LostFocus)以及我希望保持它的位置并按比例调整应用程序的其余部分.

我主要是一个后端开发人员,所以这不是我的强项 - 如果有人能给我一个如何实现这一目标的大纲样本,我会很感激.

silverlight wpf xaml shape

15
推荐指数
1
解决办法
1863
查看次数

删除HTML5画布上以前绘制的线条

为了使用HTML5画布,我决定制作一个绘制模拟表盘的应用程序.一切都很好,除了旧的线条没有像我期望的那样被抹去.我已经包含了下面的部分代码 - DrawHands()每秒调用一次:

var hoursPoint = new Object();
var minutesPoint = new Object();
var secondsPoint = new Object();

function drawHands()
{
    var now = new Date();

    drawLine(centerX, centerY, secondsPoint.X, secondsPoint.Y, "white", 1);
    var seconds = now.getSeconds();
    secondsPoint = getOtherEndOfLine(centerX, centerY, 2 * Math.PI / 60 * seconds, 0.75 * radius);
    drawLine(centerX, centerY, secondsPoint.X, secondsPoint.Y, "black", 1);

    drawLine(centerX, centerY, minutesPoint.X, minutesPoint.Y, "white", 3);
    var minutes = now.getMinutes();
    minutesPoint = getOtherEndOfLine(centerX, centerY, 2 * Math.PI / 60 * minutes, 0.75 * radius); …
Run Code Online (Sandbox Code Playgroud)

html javascript html5-canvas

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

Azure Functions:为根 URL 提供内容

我有一个 C# Azure Function 项目,具有多种功能。

其中一项功能是提供一些 HTML 内容。目前可以在/api/home 访问该功能。但是,我希望针对根/URL 触发它。

我在我的项目中添加了一个 proxies.json 文件:

{
  "Home": {
    "matchCondition": {
      "methods": ["GET"],
      "route": "/"
    },
    "backendUri": "https://localhost:7071/api/home"
  }
}
Run Code Online (Sandbox Code Playgroud)

但这仍然没有效果 - 它继续提供默认的 Azure Fucntions 网页。

有什么办法可以做到这一点吗?

azure-functions

11
推荐指数
2
解决办法
3742
查看次数

你能改进这个C#正则表达式代码吗?

在一个程序中,我正在读取一些数据文件,其中一部分格式化为一系列记录,每个记录都放在方括号中.每条记录都包含一个部分标题和一系列键/值对.

我最初编写代码来循环并提取值,但决定使用正则表达式可以更优雅地完成.下面是我生成的代码(我刚刚在控制台应用程序中将其破解 - 所以知道变量名称不是很好,等等.

你能建议改进吗?我觉得没有必要做两个匹配和一个子串,但无法弄清楚如何在一个大步骤中完成所有操作:

string input = "[section1 key1=value1 key2=value2][section2 key1=value1 key2=value2 key3=value3][section3 key1=value1]";

MatchCollection matches=Regex.Matches(input, @"\[[^\]]*\]");
foreach (Match match in matches)
{
    string subinput = match.Value;

    int firstSpace = subinput.IndexOf(' ');
    string section = subinput.Substring(1, firstSpace-1);
    Console.WriteLine(section);

    MatchCollection newMatches = Regex.Matches(subinput.Substring(firstSpace + 1), @"\s*(\w+)\s*=\s*(\w+)\s*");
    foreach (Match newMatch in newMatches)
    {
        Console.WriteLine("{0}={1}", newMatch.Groups[1].Value, newMatch.Groups[2].Value);
    }
}
Run Code Online (Sandbox Code Playgroud)

c# regex

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

在Silverlight中显示GIF

我的Web服务器上的文件夹中有许多GIF /dir/subdir/bla.gif.

在同一台服务器上是Silverlight 3应用程序/ClientBin/bla.xap.

有没有办法在Silverlight应用程序中显示GIF?

我已经尝试过<Image x:Name=img" />然后在代码设置this.img.Source=new BitmapImage(new Uri("/dir/subdir/bla.gif"))中没有成功.

欢迎任何想法.

silverlight image gif imagesource

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

ASP.Net MVC,ViewPage <Dynamic>和EditorFor/LabelFor

我正在使用Razer语法玩MVC3,不过我认为问题更为笼统.

在控制器中,我有类似的东西:

ViewModel.User = New User(); // The model I want to display/edit
ViewModel.SomeOtherProperty = someOtherValue; // Hense why need dynamic
Return View();
Run Code Online (Sandbox Code Playgroud)

我的视图继承自System.Web.Mvc.ViewPage

但如果我尝试做类似的事情:

<p>
@Html.LabelFor(x => x.User.Name
@Html.EditorFor(x => x.User.Name
</p>
Run Code Online (Sandbox Code Playgroud)

我收到错误:"表达式树可能不包含动态操作"

但是,使用ViewPage似乎很常见,编辑器/ LabelFor也是如此.因此,如果没有办法做到这一点,我会感到惊讶 - 欣赏任何指针.

asp.net-mvc dynamic

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

指示 getUserMedia 使用最佳可用相机分辨率

我正在使用 getUserMedia 函数从网络摄像头录制视频。一切工作正常,除了当我刚刚指定 video: true 约束时它仅以 640x480 分辨率录制。

如果我设置如下约束,我现在可以在笔记本电脑上获得更好的录音质量:

var mediaConstraints = {
    audio: true,
    video: {
        width: { min: 1280 },
        height: { min: 720 }
    }
};
Run Code Online (Sandbox Code Playgroud)

但是,如果另一台设备的分辨率高于 1280x720,或者甚至更低,该怎么办?

我尝试将 min 设置为非常低,将 max 设置为非常高;但它只是默认为 640x480,或者根本没有给出任何内容。我也尝试设置所需的大小,但正如预期的那样 - 我最终得到了该值。如果我将“期望”设置得非常高(因此它会选择最接近的可用值),那么我最终将一无所获。

那么问题是,如何设置约束以获得相机可以提供的最大分辨率?

html javascript video getusermedia

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