Asp.net web api Xamarin绑定条目(双精度)在保存/检索SQL数据库(EF6)时混淆十进制符号

Asp.net web api Xamarin绑定条目(双精度)在保存/检索SQL数据库(EF6)时混淆十进制符号,asp.net-web-api,xamarin.forms,entity-framework-6,cultureinfo,decimal-point,Asp.net Web Api,Xamarin.forms,Entity Framework 6,Cultureinfo,Decimal Point,我是一个新手,我正在用Xamarin表单构建一个应用程序,在那里我使用EF6通过asp.net Web API保存和获取数据 我的系统是德语的,所以小数点是“,”。我的问题来了: 我有一个绑定的输入字段“高度”: XAML: 绑定是有效的,但是如果我在字段中输入一个像175,2这样的值,并在模型中的setter上放置一个断点,那么会有一个值1752…,它会像这样保存到DB(float列)中。如果我输入一个像175.2这样的值,它将以175,2的形式进入DB(注意不同的十进制符号)。因此,如果我从

我是一个新手,我正在用Xamarin表单构建一个应用程序,在那里我使用EF6通过asp.net Web API保存和获取数据

我的系统是德语的,所以小数点是“,”。我的问题来了:

我有一个绑定的输入字段“高度”:

XAML:

绑定是有效的,但是如果我在字段中输入一个像175,2这样的值,并在模型中的setter上放置一个断点,那么会有一个值1752…,它会像这样保存到DB(float列)中。如果我输入一个像175.2这样的值,它将以175,2的形式进入DB(注意不同的十进制符号)。因此,如果我从数据库中获取值,我的输入字段中将有175,2,如果我再次保存,它将像上面那样变成1752

这是文化信息的问题吗?例如,我尝试玩TryParse,并在app.xaml.cs中更改文化信息。但是我的工作日也会用英语,日期格式也会改变,这是我不想要的

这是否也是Web API和JSON的问题

我希望我不必(因为我认为这不是正确的解决方案)执行类似于
.replace(“,”,“)
或类似的操作

编辑 我正在使用的行为来自于此:

行为:数字中心从何而来?看来这可能是问题的根本原因。@Jason我从这里得到了答案:我会调试
onentrytexchanged
,看看它是否符合您的文化settings@Jason我做到了,如果我设置断点,TryParse方法中的培养基是正确的。为了排除它来自行为的可能性,我将其删除,还是同样的问题,
行为:数字中心
从何而来?看来这可能是问题的根本原因。@Jason我从这里得到了答案:我会调试
onentrytexchanged
,看看它是否符合您的文化settings@Jason我做到了,如果我设置断点,TryParse方法中的培养基是正确的。为了排除它来自行为的可能性,我将其删除,还是一样的问题
<Entry Placeholder="{helper:Translate Height}" Text="{Binding Height,Mode=TwoWay}" Keyboard="Numeric" Style="{StaticResource entryStyle}" >
                        <Entry.Behaviors>
                            <Behaviors:NumericEntry Double="True"/>
                        </Entry.Behaviors>
                    </Entry>
 public class ProfileData : INotifyPropertyChanged
    {

        public event PropertyChangedEventHandler PropertyChanged;
        public void OnPropertyChanged([CallerMemberName] string propertyName = null)
        {
            PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(propertyName)));
        }
.
.
.
        private double? _height;
        public double? Height
        {
            get => _height;
            set
            {
                _height = value;
                OnPropertyChanged();
            }
        }
.
.
.
}