小编Chr*_*tos的帖子

参数数据类型文本对于下层函数的参数 1 无效

在我的应用程序的搜索功能中,我实现了一个搜索功能,该功能对数据库执行以下语句。

resultsquery = db.DBMovies.Where(m => (m.Actors.ToLower()).Contains(q.ToLower()))
Run Code Online (Sandbox Code Playgroud)

在部分中,q.ToLower()我读取了 url 参数q并将其转换为小写并在相关的数据库列中找到它。在我的数据库中,“Actors”列的类型是“text”而不是 varchar。当我运行我的应用程序时,我收到一个名为Argument data type text is invalid for argument 1 of lower function. 有什么办法可以避免这种异常吗?我更喜欢一种可以在一行中解决它的方法。

谢谢你。

c# sql sql-server lambda

4
推荐指数
1
解决办法
9106
查看次数

数学运算在c#中无法正常工作

我刚开始学习C#,我正在尝试一个程序,它接受华氏温度并转换为摄氏温度,在第三步中将摄氏温度转换回华氏温度(以验证数学)我使用以下代码来执行上述操作功能

Console.Write("Enter Your Temperature in fahrenheit  : ");
float faren = float.Parse(Console.ReadLine());
float cel = (faren - 32)*(5/9);
float farenconv = 32 + (cel * 9 / 5);
Console.WriteLine("Orignal Temperature : " + faren);
Console.WriteLine("Converted in celsuis : " + cel);
Console.WriteLine("Converted Back in fahrenheit  : " + farenconv);
Run Code Online (Sandbox Code Playgroud)

现在问题是我得到cel = 0的输出无论如何,我输入华氏,但当我删除*(5/9)它工作正常,任何人都有任何线索.

c#

4
推荐指数
1
解决办法
124
查看次数

如何在LINQ中获取最后一个插入ID

我有两张桌子,user并且studentuser是父表student是子表

所以从下面的代码

public void adduserStudenttype(StudentAddUserModel s)
{
    using (DASEntities db = new DASEntities())
    {
        user u = new user();
        u.usersEmail = s.Email;
        u.usersPassword = s.Password;
        u.usersFname = s.Fname;
        u.usersUtype = s.UserType;
        db.user.Add(u);
        db.SaveChanges();
        
        student stud = new student();
        stud.studentID = \\ how to get the id in the user last insert
    }     
}
Run Code Online (Sandbox Code Playgroud)

我如何iduser表中获取最后插入的内容? id是表中的主键user

c# linq asp.net-mvc-4

4
推荐指数
1
解决办法
9834
查看次数

如何在c#中使用DbContext删除对象?

我有这个删除方法:

private void btnDeleteOrderLine_Click(object sender, EventArgs e)
{
    OrderLine orderLine = (OrderLine)dgvOrderLine.SelectedRows[0].DataBoundItem;
    db.OrderLines.Remove(orderLine);
    db.SaveChanges();
    refreshGrid();
}
Run Code Online (Sandbox Code Playgroud)

当我单击该删除按钮时,我收到此错误:

无法删除该对象,因为在该对象中找不到该对象 ObjectStateManager.

我发现这是因为有两个Context类的实例.所以,我试过这个:

private void btnDeleteOrderLine_Click(object sender, EventArgs e)
{
    OrderLine orderLine = (OrderLine)dgvOrderLine.SelectedRows[0].DataBoundItem;
    db.OrderLines.Attach(orderLine);  // added this part
    db.OrderLines.Remove(orderLine);
    db.SaveChanges();
    refreshGrid();
}
Run Code Online (Sandbox Code Playgroud)

这给了我以下错误:

多个实例不能引用实体对象 IEntityChangeTracker.

如何修复此问题并从Context DbSet中删除对象?

.net c# linq entity-framework winforms

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

等待SignInManager.PasswordSignInAsync()总是导致我的ASP.NET MVC项目失败

我目前正在实现登录我的ASP.NET MVC项目的能力.我尽可能多地使用提供的方法.

目前,我在我的数据库中设置了一个名为User的表,它存储了有关用户的所有用户名,密码和其他详细信息.

我的LoginViewModel:

public class LoginViewModel
{
    public User User { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

AccountController(主要是默认的,我只更改了PasswordSignInAsync方法的变量)

[HttpPost]
[AllowAnonymous]
[ValidateAntiForgeryToken]
public async Task<ActionResult> Login(LoginViewModel model, string returnUrl)
{
    if (ModelState.IsValid)
    {
        return View(model);
    }
    // To enable password failures to trigger account lockout, change to shouldLockout: true
    var result = await SignInManager.PasswordSignInAsync(model.User.Username, model.User.Password, false , shouldLockout: false);
Run Code Online (Sandbox Code Playgroud)

为什么这一行总是返回失败?

这是我第一次尝试添加登录功能,所以任何帮助都将非常感激.:)

c# asp.net asp.net-mvc asp.net-mvc-4

4
推荐指数
2
解决办法
9440
查看次数

Linq加入查询错误

我正在尝试连接多个数据表来创建单个数据表.这是查询.

var row = from r0w1 in dt_vi.AsEnumerable()
          join r0w2 in dt_workcenter.AsEnumerable()
          on r0w1.Field<int>("wcID") equals r0w2.Field<int>("iD")
          join r0w3 in dt_recipe.AsEnumerable()
          on r0w1.Field<int?>("curingRecipeID") equals r0w3.Field<int?>("recipe_id") join r0w4 in dt_defect.AsEnumerable()
          on r0w1.Field<int?>("defectID") equals r0w4.Field<int?>("defect_id") into ps
          from r0w4 in ps.DefaultIfEmpty()
          select r0w1.ItemArray.Concat(r0w2.ItemArray.Concat(r0w3.ItemArray.Concat(r0w4.ItemArray))).ToArray();

foreach (object[] values in row)
    dt.Rows.Add(values);
Run Code Online (Sandbox Code Playgroud)

我试着把r0w1和r0w4加入LEFT OUTER JOIN.但在这里我得到了错误

你调用的对象是空的

错误似乎在

r0w4.ItemArray
Run Code Online (Sandbox Code Playgroud)

可能是r0w4没有得到任何价值.可能的原因是什么?

c# linq join

4
推荐指数
1
解决办法
86
查看次数

无法使用Ninject将依赖项注入到从Angular Service调用的ASP.NET Web API控制器中

我正在使用Ninject和ASP.NET MVC 4.我正在使用存储库并希望进行构造函数注入以将存储库传递给其中一个控制器.

这是我的上下文对象(EntityFramework),它实现了我的StatTracker接口:

public class StatTrackerRepository : IStatTrackerRepository
{
    private GolfStatTrackerEntities _ctx;

    public StatTrackerRepository(GolfStatTrackerEntities ctx)
    {
        _ctx = ctx;
    }

    public IQueryable<Facility> GetFacilites()
    {
        return _ctx.Facilities;
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我的Repository接口:

public interface IStatTrackerRepository
{ 
    IQueryable<Facility> GetFacilites();
}
Run Code Online (Sandbox Code Playgroud)

然后调用我的家庭控制器:

public class HomeController : Controller
{
    public IStatTrackerRepository _repo { get; set; }

    public HomeController(IStatTrackerRepository repo)
    {
        _repo = repo;
    }

    public ActionResult Index()
    {
        var facilities = _repo.GetFacilites().ToList();
        return View(facilities);
    }
}
Run Code Online (Sandbox Code Playgroud)

页面加载正确,但是,一旦页面加载,它立即使用angularjs控制器调用$ http方法:

function facilityIndexController($scope, $http) {
    $scope.data = []; …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc entity-framework ninject.web.mvc angularjs

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

C#设置通过Func <T>传递给方法的属性的属性值

我使用此方法获取方法中属性的值:

public static T Decrypt<T>(Func<T> prop, string username, string password)
{
    T value = prop();
    //do cool stuff with t
    return value;
}
Run Code Online (Sandbox Code Playgroud)

我正在寻找一种方法来做另一种方式arround,设置我的属性的价值

public static void Encrypt<T>(Func<T> prop, T value, string username, string password)
{
    //do stuff with value
    ??? set prop ???
}
Run Code Online (Sandbox Code Playgroud)

我搜索并尝试过表达式,但云无法让它工作:

public static void Encrypt<T>(Expression<Func<T>> property, T value, string username, string password)
{
    //do stuff with value
    var propertyInfo = ((MemberExpression)property.Body).Member as PropertyInfo;
    propertyInfo.SetValue(property, value);
}
Run Code Online (Sandbox Code Playgroud)

.net c# func

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

为什么我的函数调用不起作用?

<script type="text/javascript">
    function CustomAlert() {
        this.render = function() {
            var winW = window.innerWidth;
            var winH = window.innerHeight;
            var dialogOverlay = document.getElementById('dialogOverlay');
            var dialogbox = document.getElementById('dialogbox');

            dialogOverlay.style.display = "block !important ";
            dialogOverlay.style.height = winH+"px !important ";
            dialogbox.style.left = (winW/2) - (550 * .5) + "px !important ";
            dialogbox.style.top = "100px !important ";
            dialogbox.style.display = "block !important";
        }

        this.ok = function () {
        }
    }

    function HighScore( arg )
    {
        CustomAlert().render();
    }
</script>
Run Code Online (Sandbox Code Playgroud)

为什么告诉我这CustomAlert是不确定的?我也尝试分配CustomAlert()给var但是控制台告诉我var现在是未定义的.

javascript function

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

如何删除数组中的空元素?

我有一个电子邮件地址数组,但是一个空字符串被注入到数组的末尾.如何在数组中删除此元素?

for(int i = 0; i < allToAddresses.Length; i++)
{
    if(allToAddresses[i] == " ") // find where empty element is
    { //Here i am trying to delete that empty element. does not work
       allToAddresses[i].Split("".ToCharArray(),StringSplitOptions.RemoveEmptyEntries);
    }
}
Run Code Online (Sandbox Code Playgroud)

c# linq arrays

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